MLIR 22.0.0git
mlir::pdll::ast::ReplaceStmt Class Referencefinal

This statement represents the replace statement in PDLL. More...

#include "mlir/Tools/PDLL/AST/Nodes.h"

Inheritance diagram for mlir::pdll::ast::ReplaceStmt:

Public Member Functions

MutableArrayRef< Expr * > getReplExprs ()
 Return the replacement values of this statement.
ArrayRef< Expr * > getReplExprs () const
Public Member Functions inherited from mlir::pdll::ast::OpRewriteStmt
ExprgetRootOpExpr () const
 Return the root operation of this rewrite.
Public Member Functions inherited from mlir::pdll::ast::Stmt
 Node (TypeID typeID, SMRange loc)
Public Member Functions inherited from mlir::pdll::ast::Node
TypeID getTypeID () const
 Return the type identifier of this node.
SMRange getLoc () const
 Return the location of this node.
void print (raw_ostream &os) const
 Print this node to the given stream.
void walk (function_ref< void(const Node *)> walkFn) const
 Walk all of the nodes including, and nested under, this node in pre-order.
template<typename WalkFnT, typename ArgT = typename llvm::function_traits< WalkFnT>::template arg_t<0>>
std::enable_if_t<!std::is_convertible< const Node *, ArgT >::value > walk (WalkFnT &&walkFn) const

Static Public Member Functions

static ReplaceStmtcreate (Context &ctx, SMRange loc, Expr *rootOp, ArrayRef< Expr * > replExprs)
Static Public Member Functions inherited from mlir::pdll::ast::Node::NodeBase< ReplaceStmt, OpRewriteStmt >
static bool classof (const Node *node)
 Provide type casting support.
Static Public Member Functions inherited from mlir::pdll::ast::OpRewriteStmt
static bool classof (const Node *node)
 Provide type casting support.
Static Public Member Functions inherited from mlir::pdll::ast::Stmt
static bool classof (const Node *node)
 Provide type casting support.

Friends

class llvm::TrailingObjects< ReplaceStmt, Expr * >
 TrailingObject utilities.

Additional Inherited Members

Public Types inherited from mlir::pdll::ast::Node::NodeBase< ReplaceStmt, OpRewriteStmt >
using Base
Protected Member Functions inherited from mlir::pdll::ast::Node::NodeBase< ReplaceStmt, OpRewriteStmt >
 NodeBase (SMRange loc, Args &&...args)
Protected Member Functions inherited from mlir::pdll::ast::OpRewriteStmt
 OpRewriteStmt (TypeID typeID, SMRange loc, Expr *rootOp)
Protected Member Functions inherited from mlir::pdll::ast::Node
 Node (TypeID typeID, SMRange loc)
Protected Attributes inherited from mlir::pdll::ast::OpRewriteStmt
ExprrootOp
 The root operation being rewritten.

Detailed Description

This statement represents the replace statement in PDLL.

This statement replace the given root operation with a set of values, corresponding roughly to the PatternRewriter::replaceOp API.

Definition at line 270 of file Nodes.h.

Member Function Documentation

◆ create()

ReplaceStmt * ReplaceStmt::create ( Context & ctx,
SMRange loc,
Expr * rootOp,
ArrayRef< Expr * > replExprs )
static

◆ getReplExprs() [1/2]

MutableArrayRef< Expr * > mlir::pdll::ast::ReplaceStmt::getReplExprs ( )
inline

Return the replacement values of this statement.

Definition at line 277 of file Nodes.h.

Referenced by create().

◆ getReplExprs() [2/2]

ArrayRef< Expr * > mlir::pdll::ast::ReplaceStmt::getReplExprs ( ) const
inline

Definition at line 280 of file Nodes.h.

◆ llvm::TrailingObjects< ReplaceStmt, Expr * >

friend class llvm::TrailingObjects< ReplaceStmt, Expr * >
friend

TrailingObject utilities.

Definition at line 289 of file Nodes.h.


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