MLIR 22.0.0git
mlir::pdll::ast::OpConstraintDecl Class Reference

The class represents an Operation constraint, and constrains a variable to be an Operation. More...

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

Inheritance diagram for mlir::pdll::ast::OpConstraintDecl:

Public Member Functions

std::optional< StringRef > getName () const
 Return the name of the operation, or std::nullopt if there isn't one.
const OpNameDeclgetNameDecl () const
 Return the declaration of the operation name.
Public Member Functions inherited from mlir::pdll::ast::Decl
const NamegetName () const
 Return the name of the decl, or nullptr if it doesn't have one.
void setDocComment (Context &ctx, StringRef comment)
 Set the documentation comment for this decl.
std::optional< StringRef > getDocComment () const
 Return the documentation comment attached to this decl if it has been set.
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 OpConstraintDeclcreate (Context &ctx, SMRange loc, const OpNameDecl *nameDecl=nullptr)
Static Public Member Functions inherited from mlir::pdll::ast::Node::NodeBase< OpConstraintDecl, CoreConstraintDecl >
static bool classof (const Node *node)
 Provide type casting support.
Static Public Member Functions inherited from mlir::pdll::ast::CoreConstraintDecl
static bool classof (const Node *node)
 Provide type casting support.
Static Public Member Functions inherited from mlir::pdll::ast::ConstraintDecl
static bool classof (const Node *node)
 Provide type casting support.
Static Public Member Functions inherited from mlir::pdll::ast::Decl
static bool classof (const Node *node)
 Provide type casting support.

Protected Member Functions

 OpConstraintDecl (SMRange loc, const OpNameDecl *nameDecl)
Protected Member Functions inherited from mlir::pdll::ast::Node::NodeBase< OpConstraintDecl, CoreConstraintDecl >
 NodeBase (SMRange loc, Args &&...args)
Protected Member Functions inherited from mlir::pdll::ast::CoreConstraintDecl
 CoreConstraintDecl (TypeID typeID, SMRange loc, const Name *name=nullptr)
Protected Member Functions inherited from mlir::pdll::ast::ConstraintDecl
 ConstraintDecl (TypeID typeID, SMRange loc, const Name *name=nullptr)
Protected Member Functions inherited from mlir::pdll::ast::Decl
 Decl (TypeID typeID, SMRange loc, const Name *name=nullptr)
Protected Member Functions inherited from mlir::pdll::ast::Node
 Node (TypeID typeID, SMRange loc)

Protected Attributes

const OpNameDeclnameDecl
 The operation name of this constraint.

Additional Inherited Members

Public Types inherited from mlir::pdll::ast::Node::NodeBase< OpConstraintDecl, CoreConstraintDecl >
using Base

Detailed Description

The class represents an Operation constraint, and constrains a variable to be an Operation.

Definition at line 773 of file Nodes.h.

Constructor & Destructor Documentation

◆ OpConstraintDecl()

mlir::pdll::ast::OpConstraintDecl::OpConstraintDecl ( SMRange loc,
const OpNameDecl * nameDecl )
inlineexplicitprotected

Definition at line 786 of file Nodes.h.

References nameDecl.

Referenced by create().

Member Function Documentation

◆ create()

OpConstraintDecl * OpConstraintDecl::create ( Context & ctx,
SMRange loc,
const OpNameDecl * nameDecl = nullptr )
static

◆ getName()

std::optional< StringRef > OpConstraintDecl::getName ( ) const

Return the name of the operation, or std::nullopt if there isn't one.

Definition at line 404 of file Nodes.cpp.

References mlir::pdll::ast::OpNameDecl::getName(), and getNameDecl().

◆ getNameDecl()

const OpNameDecl * mlir::pdll::ast::OpConstraintDecl::getNameDecl ( ) const
inline

Return the declaration of the operation name.

Definition at line 783 of file Nodes.h.

References nameDecl.

Referenced by getName().

Member Data Documentation

◆ nameDecl

const OpNameDecl* mlir::pdll::ast::OpConstraintDecl::nameDecl
protected

The operation name of this constraint.

Definition at line 790 of file Nodes.h.

Referenced by create(), getNameDecl(), and OpConstraintDecl().


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