MLIR  18.0.0git
Static Public Member Functions | List of all members
mlir::detail::pdl_function_builder::ProcessDerivedPDLValue< T, BaseT > Struct Template Reference

This struct provides a simplified model for processing types that inherit from builtin PDLValue types. More...

#include "mlir/IR/PatternMatch.h"

+ Inheritance diagram for mlir::detail::pdl_function_builder::ProcessDerivedPDLValue< T, BaseT >:

Static Public Member Functions

static LogicalResult verifyAsArg (function_ref< LogicalResult(const Twine &)> errorFn, BaseT baseValue, size_t argIdx)
 
static T processAsArg (BaseT baseValue)
 
static void processAsResult (PatternRewriter &, PDLResultList &results, T value)
 
- Static Public Member Functions inherited from mlir::detail::pdl_function_builder::ProcessPDLValueBasedOn< T, BaseT >
static LogicalResult verifyAsArg (function_ref< LogicalResult(const Twine &)> errorFn, PDLValue pdlValue, size_t argIdx)
 
static T processAsArg (PDLValue pdlValue)
 
static LogicalResult verifyAsArg (function_ref< LogicalResult(const Twine &)> errorFn, BaseT value, size_t argIdx)
 Explicitly add the expected parent API to ensure the parent class implements the necessary API (and doesn't implicitly inherit it from somewhere else). More...
 
static T processAsArg (BaseT baseValue)
 

Detailed Description

template<typename T, typename BaseT>
struct mlir::detail::pdl_function_builder::ProcessDerivedPDLValue< T, BaseT >

This struct provides a simplified model for processing types that inherit from builtin PDLValue types.

For example, derived attributes like IntegerAttr, derived types like IntegerType, derived operations like ModuleOp, Interfaces, etc.

Definition at line 1172 of file PatternMatch.h.

Member Function Documentation

◆ processAsArg()

template<typename T , typename BaseT >
static T mlir::detail::pdl_function_builder::ProcessDerivedPDLValue< T, BaseT >::processAsArg ( BaseT  baseValue)
inlinestatic

Definition at line 1185 of file PatternMatch.h.

◆ processAsResult()

template<typename T , typename BaseT >
static void mlir::detail::pdl_function_builder::ProcessDerivedPDLValue< T, BaseT >::processAsResult ( PatternRewriter ,
PDLResultList results,
value 
)
inlinestatic

Definition at line 1190 of file PatternMatch.h.

References mlir::PDLResultList::push_back().

◆ verifyAsArg()

template<typename T , typename BaseT >
static LogicalResult mlir::detail::pdl_function_builder::ProcessDerivedPDLValue< T, BaseT >::verifyAsArg ( function_ref< LogicalResult(const Twine &)>  errorFn,
BaseT  baseValue,
size_t  argIdx 
)
inlinestatic

Definition at line 1174 of file PatternMatch.h.

References mlir::success().


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