14 #ifndef MLIR_INTERFACES_CALLINTERFACES_H
15 #define MLIR_INTERFACES_CALLINTERFACES_H
18 #include "llvm/ADT/PointerUnion.h"
27 class CallOpInterface;
29 namespace call_interface_impl {
45 template <
typename To>
47 :
public CastInfo<To, mlir::CallInterfaceCallable::PointerUnion> {};
49 template <
typename To>
51 :
public CastInfo<To, const mlir::CallInterfaceCallable::PointerUnion> {};
56 #include "mlir/Interfaces/CallInterfaces.h.inc"
Operation is the basic unit of execution within MLIR.
This class represents a collection of SymbolTables.
The OpAsmOpInterface, see OpAsmInterface.td for more details.
Operation * resolveCallable(CallOpInterface call, SymbolTableCollection *symbolTable=nullptr)
Resolve the callable operation for given callee to a CallableOpInterface, or nullptr if a valid calla...
Include the generated interface declarations.
A callable is either a symbol, or an SSA value, that is referenced by a call-like operation.