MLIR  21.0.0git
Public Member Functions | List of all members
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs > Class Template Reference

This helps visit SMT types. More...

#include "mlir/Dialect/SMT/IR/SMTVisitors.h"

Public Member Functions

ResultType dispatchSMTTypeVisitor (Type type, ExtraArgs... args)
 
ResultType visitInvalidSMTType (Type type, ExtraArgs... args)
 This callback is invoked on any non-expression types. More...
 
ResultType visitUnhandledSMTType (Type type, ExtraArgs... args)
 This callback is invoked on any SMT type that are not handled by the concrete visitor. More...
 
 HANDLE (BoolType, Unhandled)
 
 HANDLE (IntegerType, Unhandled)
 
 HANDLE (BitVectorType, Unhandled)
 
 HANDLE (ArrayType, Unhandled)
 
 HANDLE (SMTFuncType, Unhandled)
 
 HANDLE (SortType, Unhandled)
 

Detailed Description

template<typename ConcreteType, typename ResultType = void, typename... ExtraArgs>
class mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >

This helps visit SMT types.

Definition at line 159 of file SMTVisitors.h.

Member Function Documentation

◆ dispatchSMTTypeVisitor()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::dispatchSMTTypeVisitor ( Type  type,
ExtraArgs...  args 
)
inline

Definition at line 161 of file SMTVisitors.h.

◆ HANDLE() [1/6]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ArrayType  ,
Unhandled   
)

◆ HANDLE() [2/6]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( BitVectorType  ,
Unhandled   
)

◆ HANDLE() [3/6]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( BoolType  ,
Unhandled   
)

◆ HANDLE() [4/6]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( IntegerType  ,
Unhandled   
)

◆ HANDLE() [5/6]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SMTFuncType  ,
Unhandled   
)

◆ HANDLE() [6/6]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SortType  ,
Unhandled   
)

◆ visitInvalidSMTType()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::visitInvalidSMTType ( Type  type,
ExtraArgs...  args 
)
inline

This callback is invoked on any non-expression types.

Definition at line 174 of file SMTVisitors.h.

◆ visitUnhandledSMTType()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType mlir::smt::SMTTypeVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledSMTType ( Type  type,
ExtraArgs...  args 
)
inline

This callback is invoked on any SMT type that are not handled by the concrete visitor.

Definition at line 178 of file SMTVisitors.h.


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