MLIR 22.0.0git
mlir::OpTrait::AtMostOneChildOf< ChildOps >::Impl< ConcreteType > Class Template Reference

#include "mlir/Dialect/IRDL/IR/IRDLTraits.h"

Inheritance diagram for mlir::OpTrait::AtMostOneChildOf< ChildOps >::Impl< ConcreteType >:

Public Member Functions

template<typename OpT>
std::enable_if_t< std::disjunction< std::is_same< OpT, ChildOps >... >::value, std::optional< OpT > > getOp ()
 Get the unique operation of a specific op that is in the operation region.

Static Public Member Functions

static LogicalResult verifyTrait (Operation *op)

Additional Inherited Members

Protected Member Functions inherited from mlir::OpTrait::TraitBase< ConcreteType, AtMostOneChildOf< ChildOps... >::Impl >
OperationgetOperation ()
 Return the ultimate Operation being worked on.

Detailed Description

template<typename... ChildOps>
template<typename ConcreteType>
class mlir::OpTrait::AtMostOneChildOf< ChildOps >::Impl< ConcreteType >

Definition at line 32 of file IRDLTraits.h.

Member Function Documentation

◆ getOp()

template<typename... ChildOps>
template<typename ConcreteType>
template<typename OpT>
std::enable_if_t< std::disjunction< std::is_same< OpT, ChildOps >... >::value, std::optional< OpT > > mlir::OpTrait::AtMostOneChildOf< ChildOps >::Impl< ConcreteType >::getOp ( )
inline

Get the unique operation of a specific op that is in the operation region.

Definition at line 68 of file IRDLTraits.h.

References mlir::OpTrait::TraitBase< ConcreteType, AtMostOneChildOf< ChildOps... >::Impl >::getOperation().

◆ verifyTrait()

template<typename... ChildOps>
template<typename ConcreteType>
LogicalResult mlir::OpTrait::AtMostOneChildOf< ChildOps >::Impl< ConcreteType >::verifyTrait ( Operation * op)
inlinestatic

Definition at line 35 of file IRDLTraits.h.

References mlir::Operation::emitError(), and success().


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