MLIR 24.0.0git
mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT > Class Template Reference

This class represents a CRTP base class for dialect resource handles. More...

#include "mlir/IR/OpImplementation.h"

Inheritance diagram for mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >:

Public Types

using Dialect = DialectT

Public Member Functions

 AsmDialectResourceHandleBase (ResourceT *resource, DialectT *dialect)
 Construct a handle from a pointer to the resource.
 AsmDialectResourceHandleBase (AsmDialectResourceHandle handle)
ResourceT * getResource ()
 Return the resource referenced by this handle.
const ResourceT * getResource () const
DialectT * getDialect () const
 Return the dialect that owns the resource.
Public Member Functions inherited from mlir::AsmDialectResourceHandle
 AsmDialectResourceHandle ()=default
 AsmDialectResourceHandle (void *resource, TypeID resourceID, Dialect *dialect)
bool operator== (const AsmDialectResourceHandle &other) const
void * getResource () const
 Return an opaque pointer to the referenced resource.
TypeID getTypeID () const
 Return the type ID of the resource.
Dialect * getDialect () const
 Return the dialect that owns the resource.

Static Public Member Functions

static bool classof (const AsmDialectResourceHandle *handle)
 Support llvm style casting.

Detailed Description

template<typename DerivedT, typename ResourceT, typename DialectT>
class mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >

This class represents a CRTP base class for dialect resource handles.

It abstracts away various utilities necessary for defined derived resource handles.

Definition at line 80 of file OpImplementation.h.

Member Typedef Documentation

◆ Dialect

template<typename DerivedT, typename ResourceT, typename DialectT>
using mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::Dialect = DialectT

Definition at line 82 of file OpImplementation.h.

Constructor & Destructor Documentation

◆ AsmDialectResourceHandleBase() [1/2]

template<typename DerivedT, typename ResourceT, typename DialectT>
mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::AsmDialectResourceHandleBase ( ResourceT * resource,
DialectT * dialect )
inline

Construct a handle from a pointer to the resource.

The given pointer should be guaranteed to live beyond the life of this handle.

Definition at line 86 of file OpImplementation.h.

References mlir::AsmDialectResourceHandle::AsmDialectResourceHandle(), and mlir::get().

Referenced by getResource().

◆ AsmDialectResourceHandleBase() [2/2]

template<typename DerivedT, typename ResourceT, typename DialectT>
mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::AsmDialectResourceHandleBase ( AsmDialectResourceHandle handle)
inline

Member Function Documentation

◆ classof()

template<typename DerivedT, typename ResourceT, typename DialectT>
bool mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::classof ( const AsmDialectResourceHandle * handle)
inlinestatic

Support llvm style casting.

Definition at line 107 of file OpImplementation.h.

References mlir::AsmDialectResourceHandle::AsmDialectResourceHandle(), and mlir::TypeID::get().

◆ getDialect()

template<typename DerivedT, typename ResourceT, typename DialectT>
DialectT * mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::getDialect ( ) const
inline

Return the dialect that owns the resource.

Definition at line 102 of file OpImplementation.h.

References mlir::AsmDialectResourceHandle::getDialect().

◆ getResource() [1/2]

template<typename DerivedT, typename ResourceT, typename DialectT>
ResourceT * mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::getResource ( )
inline

Return the resource referenced by this handle.

Definition at line 94 of file OpImplementation.h.

References mlir::AsmDialectResourceHandle::getResource().

Referenced by getResource().

◆ getResource() [2/2]

template<typename DerivedT, typename ResourceT, typename DialectT>
const ResourceT * mlir::AsmDialectResourceHandleBase< DerivedT, ResourceT, DialectT >::getResource ( ) const
inline

Definition at line 97 of file OpImplementation.h.

References AsmDialectResourceHandleBase(), and getResource().


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