MLIR 22.0.0git
mlir::python::adaptors::mlir_attribute_subclass Class Reference

Creates a custom subclass of mlir.ir.Attribute, implementing a casting constructor and type checking methods. More...

#include "mlir/Bindings/Python/PybindAdaptors.h"

Inheritance diagram for mlir::python::adaptors::mlir_attribute_subclass:

Public Types

using IsAFunctionTy = bool (*)(MlirAttribute)
using GetTypeIDFunctionTy = MlirTypeID (*)()

Public Member Functions

 mlir_attribute_subclass (py::handle scope, const char *attrClassName, IsAFunctionTy isaFunction, GetTypeIDFunctionTy getTypeIDFunction=nullptr)
 Subclasses by looking up the super-class dynamically.
 mlir_attribute_subclass (py::handle scope, const char *typeClassName, IsAFunctionTy isaFunction, const py::object &superCls, GetTypeIDFunctionTy getTypeIDFunction=nullptr)
 Subclasses with a provided mlir.ir.Attribute super-class.
Public Member Functions inherited from mlir::python::adaptors::pure_subclass
 pure_subclass (py::handle scope, const char *derivedClassName, const py::object &superClass)
template<typename Func, typename... Extra>
pure_subclassdef (const char *name, Func &&f, const Extra &...extra)
template<typename Func, typename... Extra>
pure_subclassdef_property_readonly (const char *name, Func &&f, const Extra &...extra)
template<typename Func, typename... Extra>
pure_subclassdef_staticmethod (const char *name, Func &&f, const Extra &...extra)
template<typename Func, typename... Extra>
pure_subclassdef_classmethod (const char *name, Func &&f, const Extra &...extra)
py::object get_class () const

Additional Inherited Members

Protected Attributes inherited from mlir::python::adaptors::pure_subclass
py::object superClass
py::object thisClass

Detailed Description

Creates a custom subclass of mlir.ir.Attribute, implementing a casting constructor and type checking methods.

Definition at line 405 of file PybindAdaptors.h.

Member Typedef Documentation

◆ GetTypeIDFunctionTy

◆ IsAFunctionTy

Definition at line 407 of file PybindAdaptors.h.

Constructor & Destructor Documentation

◆ mlir_attribute_subclass() [1/2]

mlir::python::adaptors::mlir_attribute_subclass::mlir_attribute_subclass ( py::handle scope,
const char * attrClassName,
IsAFunctionTy isaFunction,
GetTypeIDFunctionTy getTypeIDFunction = nullptr )
inline

Subclasses by looking up the super-class dynamically.

Definition at line 411 of file PybindAdaptors.h.

References MAKE_MLIR_PYTHON_QUALNAME, and mlir_attribute_subclass().

Referenced by mlir_attribute_subclass().

◆ mlir_attribute_subclass() [2/2]

mlir::python::adaptors::mlir_attribute_subclass::mlir_attribute_subclass ( py::handle scope,
const char * typeClassName,
IsAFunctionTy isaFunction,
const py::object & superCls,
GetTypeIDFunctionTy getTypeIDFunction = nullptr )
inline

Subclasses with a provided mlir.ir.Attribute super-class.

This must be used if the subclass is being defined in the same extension module as the mlir.ir class (otherwise, it will trigger a recursive initialization).

Definition at line 424 of file PybindAdaptors.h.

References mlir::python::adaptors::pure_subclass::def(), mlir::python::adaptors::pure_subclass::def_staticmethod(), MAKE_MLIR_PYTHON_QUALNAME, MLIR_PYTHON_CAPI_TYPE_CASTER_REGISTER_ATTR, mlir::python::adaptors::pure_subclass::pure_subclass(), and mlir::python::adaptors::pure_subclass::thisClass.


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