MLIR  20.0.0git
Public Member Functions | List of all members
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. More...
 
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. More...
 
const KeyTygetValue () const
 Return the key value of this predicate. More...
 
- 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. More...
 
PositiongetParent () const
 Returns the parent position. The root operation position has no parent. More...
 
Predicates::Kind getKind () const
 Returns the kind of this position. More...
 

Additional Inherited Members

- Public Types inherited from mlir::pdl_to_pdl_interp::PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Predicates::ConstraintResultPos >
using KeyTy = std::pair< ConstraintQuestion *, unsigned >
 
using Base = PredicateBase< ConstraintPosition, Position, std::pair< ConstraintQuestion *, unsigned >, Kind >
 
- 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. More...
 
static ConstraintPositionconstruct (StorageUniquer::StorageAllocator &alloc, KeyT &&key)
 Construct an instance with the given storage allocator. More...
 
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. More...
 

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 291 of file Predicate.h.

Member Function Documentation

◆ getIndex()

unsigned mlir::pdl_to_pdl_interp::ConstraintPosition::getIndex ( ) const
inline

◆ 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 299 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 ( typename KeyT  )
inlineexplicit

Definition at line 90 of file Predicate.h.


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