MLIR 23.0.0git
mlir::RegionSuccessor Class Reference

This class represents a successor of a region. More...

#include "mlir/Interfaces/ControlFlowInterfaces.h"

Public Member Functions

 RegionSuccessor (Region *region)
 Initialize a successor that branches to a region of the parent operation.
RegiongetSuccessor () const
 Return the given region successor.
bool isParent () const
 Return true if the successor is the parent operation.
bool operator== (RegionSuccessor rhs) const
bool operator== (const Region *region) const

Static Public Member Functions

static RegionSuccessor parent ()
 Initialize a successor that branches after/out of the parent operation.

Friends

bool operator!= (RegionSuccessor lhs, RegionSuccessor rhs)

Detailed Description

This class represents a successor of a region.

A region successor can either be another region, or the parent operation (i.e., the operation that implements the RegionBranchOpInterface). In the latter case, the control flow branches after/out of the region branch operation.

Definition at line 199 of file ControlFlowInterfaces.h.

Constructor & Destructor Documentation

◆ RegionSuccessor()

mlir::RegionSuccessor::RegionSuccessor ( Region * region)
inline

Initialize a successor that branches to a region of the parent operation.

Definition at line 202 of file ControlFlowInterfaces.h.

Referenced by operator!=, operator==(), and parent().

Member Function Documentation

◆ getSuccessor()

Region * mlir::RegionSuccessor::getSuccessor ( ) const
inline

Return the given region successor.

Returns nullptr if the successor is the parent operation.

Definition at line 211 of file ControlFlowInterfaces.h.

Referenced by mlir::operator<<(), mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(), and mlir::dataflow::LivenessAnalysis::visitNonControlFlowArguments().

◆ isParent()

bool mlir::RegionSuccessor::isParent ( ) const
inline

Return true if the successor is the parent operation.

Definition at line 214 of file ControlFlowInterfaces.h.

Referenced by getSingleRegionSuccessorInputs(), and mlir::operator<<().

◆ operator==() [1/2]

bool mlir::RegionSuccessor::operator== ( const Region * region) const
inline

Definition at line 220 of file ControlFlowInterfaces.h.

◆ operator==() [2/2]

bool mlir::RegionSuccessor::operator== ( RegionSuccessor rhs) const
inline

Definition at line 216 of file ControlFlowInterfaces.h.

References RegionSuccessor(), and rhs.

◆ parent()

RegionSuccessor mlir::RegionSuccessor::parent ( )
inlinestatic

◆ operator!=

bool operator!= ( RegionSuccessor lhs,
RegionSuccessor rhs )
friend

Definition at line 222 of file ControlFlowInterfaces.h.

References lhs, RegionSuccessor(), and rhs.


The documentation for this class was generated from the following file: