MLIR 22.0.0git
mlir::pdl_to_pdl_interp::ConstraintPosition Struct Reference

A position describing the result of a native constraint. More...

#include "Conversion/PDLToPDLInterp/Predicate.h"

Inheritance diagram for mlir::pdl_to_pdl_interp::ConstraintPosition:

Public Member Functions

ConstraintQuestiongetQuestion () const
 Returns the ConstraintQuestion to enable keeping track of the native constraint this position stems from.
unsigned getIndex () const
template<typename KeyT>
 PredicateBase (KeyT &&key)
Public Member Functions inherited from mlir::pdl_to_pdl_interp::PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Predicates::ConstraintResultPos >
 PredicateBase (KeyT &&key)
bool operator== (const KeyTy &key) const
 Utility methods required by the storage allocator.
const KeyTygetValue () const
 Return the key value of this predicate.
Public Member Functions inherited from mlir::pdl_to_pdl_interp::Position
 Position (Predicates::Kind kind)
virtual ~Position ()
unsigned getOperationDepth () const
 Returns the depth of the first ancestor operation position.
PositiongetParent () const
 Returns the parent position. The root operation position has no parent.
Predicates::Kind getKind () const
 Returns the kind of this position.

Additional Inherited Members

Public Types inherited from mlir::pdl_to_pdl_interp::PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Predicates::ConstraintResultPos >
using KeyTy
using Base
Static Public Member Functions inherited from mlir::pdl_to_pdl_interp::PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Predicates::ConstraintResultPos >
static ConstraintPositionget (StorageUniquer &uniquer, Args &&...args)
 Get an instance of this position.
static ConstraintPositionconstruct (StorageUniquer::StorageAllocator &alloc, KeyT &&key)
 Construct an instance with the given storage allocator.
static bool classof (const Position *pred)
Protected Member Functions inherited from mlir::StorageUniquer::BaseStorage
 BaseStorage ()=default
Protected Attributes inherited from mlir::pdl_to_pdl_interp::PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Predicates::ConstraintResultPos >
KeyTy key
Protected Attributes inherited from mlir::pdl_to_pdl_interp::Position
Positionparent = nullptr
 Link to the parent position.

Detailed Description

A position describing the result of a native constraint.

It saves the corresponding ConstraintQuestion and result index to enable referring back to them

Definition at line 298 of file Predicate.h.

Member Function Documentation

◆ getIndex()

◆ getQuestion()

ConstraintQuestion * mlir::pdl_to_pdl_interp::ConstraintPosition::getQuestion ( ) const
inline

Returns the ConstraintQuestion to enable keeping track of the native constraint this position stems from.

Definition at line 306 of file Predicate.h.

References mlir::pdl_to_pdl_interp::PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Predicates::ConstraintResultPos >::key.

◆ PredicateBase()

template<typename KeyT>
mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::PredicateBase ( KeyT && key)
inlineexplicit

Definition at line 90 of file Predicate.h.


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