MLIR
20.0.0git
|
Base class for all predicates, used to allow efficient pointer comparison. More...
#include "Conversion/PDLToPDLInterp/Predicate.h"
Public Types | |
using | KeyTy = Key |
using | Base = PredicateBase< ConcreteT, BaseT, Key, Kind > |
Public Member Functions | |
template<typename KeyT > | |
PredicateBase (KeyT &&key) | |
bool | operator== (const KeyTy &key) const |
Utility methods required by the storage allocator. More... | |
const KeyTy & | getValue () const |
Return the key value of this predicate. More... | |
Static Public Member Functions | |
template<typename... Args> | |
static ConcreteT * | get (StorageUniquer &uniquer, Args &&...args) |
Get an instance of this position. More... | |
template<typename KeyT > | |
static ConcreteT * | construct (StorageUniquer::StorageAllocator &alloc, KeyT &&key) |
Construct an instance with the given storage allocator. More... | |
static bool | classof (const BaseT *pred) |
Protected Attributes | |
KeyTy | key |
Base class for all predicates, used to allow efficient pointer comparison.
Definition at line 84 of file Predicate.h.
using mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::Base = PredicateBase<ConcreteT, BaseT, Key, Kind> |
Definition at line 87 of file Predicate.h.
using mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::KeyTy = Key |
Definition at line 86 of file Predicate.h.
|
inlineexplicit |
Definition at line 90 of file Predicate.h.
|
inlinestatic |
Definition at line 108 of file Predicate.h.
|
inlinestatic |
Construct an instance with the given storage allocator.
Definition at line 101 of file Predicate.h.
References mlir::StorageUniquer::StorageAllocator::allocate(), and mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::key.
Referenced by mlir::pdl_to_pdl_interp::ConstraintQuestion::construct().
|
inlinestatic |
Get an instance of this position.
Definition at line 95 of file Predicate.h.
References mlir::StorageUniquer::get().
Referenced by mlir::pdl_to_pdl_interp::OperationPosition::get(), and mlir::pdl_to_pdl_interp::OperationPosition::getRoot().
|
inline |
Return the key value of this predicate.
Definition at line 111 of file Predicate.h.
References mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::key.
Referenced by getTreePredicates().
|
inline |
Utility methods required by the storage allocator.
Definition at line 107 of file Predicate.h.
References mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::key.
|
protected |
Definition at line 114 of file Predicate.h.
Referenced by mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::construct(), mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::getValue(), and mlir::pdl_to_pdl_interp::PredicateBase< ConcreteT, BaseT, Key, Kind >::operator==().