MLIR 22.0.0git
mlir::python::PyInferTypeOpInterface Class Reference

Python wrapper for InferTypeOpInterface. More...

Inheritance diagram for mlir::python::PyInferTypeOpInterface:

Classes

struct  AppendResultsCallbackData
 C-style user-data structure for type appending callback. More...

Public Member Functions

std::vector< PyTypeinferReturnTypes (std::optional< nb::list > operandList, std::optional< PyAttribute > attributes, void *properties, std::optional< std::vector< PyRegion > > regions, DefaultingPyMlirContext context, DefaultingPyLocation location)
 Given the arguments required to build an operation, attempts to infer its return types.
Public Member Functions inherited from mlir::python::PyConcreteOpInterface< PyInferTypeOpInterface >
 PyConcreteOpInterface (nb::object object, DefaultingPyMlirContext context)
 Constructs an interface instance from an object that is either an operation or a subclass of OpView.
bool isStatic ()
 Returns true if this object was constructed from a subclass of OpView rather than from an operation instance.
nb::typed< nb::object, PyOperationgetOperationObject ()
 Returns the operation instance from which this object was constructed.
nb::typed< nb::object, PyOpViewgetOpView ()
 Returns the opview of the operation instance from which this object was constructed.
const std::string & getOpName ()
 Returns the canonical name of the operation this interface is constructed from.

Static Public Member Functions

static void appendResultsCallback (intptr_t nTypes, MlirType *types, void *userData)
 Appends the types provided as the two first arguments to the user-data structure (expects AppendResultsCallbackData).
static void bindDerived (ClassTy &cls)
Static Public Member Functions inherited from mlir::python::PyConcreteOpInterface< PyInferTypeOpInterface >
static void bind (nb::module_ &m)
 Creates the Python bindings for this class in the given module.
static void bindDerived (ClassTy &cls)
 Hook for derived classes to add class-specific bindings.

Static Public Attributes

static constexpr const char * pyClassName = "InferTypeOpInterface"
static constexpr GetTypeIDFunctionTy getInterfaceID

Additional Inherited Members

Protected Types inherited from mlir::python::PyConcreteOpInterface< PyInferTypeOpInterface >
using ClassTy
using GetTypeIDFunctionTy

Detailed Description

Python wrapper for InferTypeOpInterface.

This interface has only static methods.

Definition at line 242 of file IRInterfaces.cpp.

Member Function Documentation

◆ appendResultsCallback()

void mlir::python::PyInferTypeOpInterface::appendResultsCallback ( intptr_t nTypes,
MlirType * types,
void * userData )
inlinestatic

Appends the types provided as the two first arguments to the user-data structure (expects AppendResultsCallbackData).

Definition at line 259 of file IRInterfaces.cpp.

References mlir::python::PyInferTypeOpInterface::AppendResultsCallbackData::inferredTypes.

Referenced by inferReturnTypes().

◆ bindDerived()

void mlir::python::PyInferTypeOpInterface::bindDerived ( ClassTy & cls)
inlinestatic

Definition at line 300 of file IRInterfaces.cpp.

References inferReturnTypes(), and mlir::python::inferReturnTypesDoc.

◆ inferReturnTypes()

std::vector< PyType > mlir::python::PyInferTypeOpInterface::inferReturnTypes ( std::optional< nb::list > operandList,
std::optional< PyAttribute > attributes,
void * properties,
std::optional< std::vector< PyRegion > > regions,
DefaultingPyMlirContext context,
DefaultingPyLocation location )
inline

Member Data Documentation

◆ getInterfaceID

GetTypeIDFunctionTy mlir::python::PyInferTypeOpInterface::getInterfaceID
staticconstexpr
Initial value:
=
MLIR_CAPI_EXPORTED MlirTypeID mlirInferTypeOpInterfaceTypeID()
Returns the interface TypeID of the InferTypeOpInterface.

Definition at line 248 of file IRInterfaces.cpp.

◆ pyClassName

const char* mlir::python::PyInferTypeOpInterface::pyClassName = "InferTypeOpInterface"
staticconstexpr

Definition at line 247 of file IRInterfaces.cpp.


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