MLIR  20.0.0git
Public Types | Static Public Member Functions | Protected Member Functions | List of all members
mlir::SideEffects::Resource::Base< DerivedResource, BaseResource > Class Template Reference

This base class is used for derived effects that are non-parametric. More...

#include "mlir/Interfaces/SideEffectInterfaces.h"

+ Inheritance diagram for mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >:

Public Types

using BaseT = Base< DerivedResource >
 

Static Public Member Functions

static DerivedResource * get ()
 Returns a unique instance for the given effect class. More...
 
static TypeID getResourceID ()
 Return the unique identifier for the base resource class. More...
 
static bool classof (const Resource *resource)
 'classof' used to support llvm style cast functionality. More...
 

Protected Member Functions

 Base ()
 
- Protected Member Functions inherited from mlir::SideEffects::Resource
 Resource (TypeID id)
 

Additional Inherited Members

- Public Member Functions inherited from mlir::SideEffects::Resource
virtual ~Resource ()=default
 
TypeID getResourceID () const
 Return the unique identifier for the base resource class. More...
 
virtual StringRef getName ()=0
 Return a string name of the resource. More...
 

Detailed Description

template<typename DerivedResource, typename BaseResource = Resource>
class mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >

This base class is used for derived effects that are non-parametric.

Definition at line 85 of file SideEffectInterfaces.h.

Member Typedef Documentation

◆ BaseT

template<typename DerivedResource , typename BaseResource = Resource>
using mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::BaseT = Base<DerivedResource>

Definition at line 87 of file SideEffectInterfaces.h.

Constructor & Destructor Documentation

◆ Base()

template<typename DerivedResource , typename BaseResource = Resource>
mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::Base ( )
inlineprotected

Definition at line 104 of file SideEffectInterfaces.h.

Member Function Documentation

◆ classof()

template<typename DerivedResource , typename BaseResource = Resource>
static bool mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::classof ( const Resource resource)
inlinestatic

'classof' used to support llvm style cast functionality.

Definition at line 99 of file SideEffectInterfaces.h.

References mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::getResourceID(), and mlir::SideEffects::Resource::getResourceID().

◆ get()

template<typename DerivedResource , typename BaseResource = Resource>
static DerivedResource* mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::get ( )
inlinestatic

Returns a unique instance for the given effect class.

Definition at line 90 of file SideEffectInterfaces.h.

◆ getResourceID()

template<typename DerivedResource , typename BaseResource = Resource>
static TypeID mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::getResourceID ( )
inlinestatic

Return the unique identifier for the base resource class.

Definition at line 96 of file SideEffectInterfaces.h.

Referenced by mlir::SideEffects::Resource::Base< DerivedResource, BaseResource >::classof().


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