tvm
Public Member Functions | List of all members
tvm::relax::DFPattern Class Reference

Managed reference to dataflow patterns. More...

#include <dataflow_pattern.h>

Inheritance diagram for tvm::relax::DFPattern:
Collaboration diagram for tvm::relax::DFPattern:

Public Member Functions

template<typename... Args>
CallPattern operator() (Args &&... args) const
 Syntatic Sugar for creating a CallPattern. More...
 
CallPattern operator() (const std::vector< DFPattern > &args) const
 Syntatic Sugar for creating a CallPattern. More...
 
OrPattern operator| (const DFPattern &other) const
 Syntatic Sugar for creating an OrPattern. More...
 
AndPattern operator& (const DFPattern &other) const
 Syntatic Sugar for creating an AndPattern. More...
 
NotPattern operator~ () const
 Syntatic Sugar for creating a NotPattern. More...
 
AttrPattern HasAttr (const Map< String, ObjectRef > &attrs) const
 Syntatic Sugar for creating an AttrPattern. More...
 
StructInfoPattern HasStructInfo (const StructInfo &struct_info) const
 Syntatic Sugar for creating a StructInfoPattern. More...
 
TypePattern HasType (const Type &type) const
 Syntatic Sugar for creating a TypePattern. More...
 
DataTypePattern HasDtype (const DataType &dtype) const
 Syntatic Sugar for creating a DataTypePattern with a DataType. More...
 
DataTypePattern HasDtype (const std::string &dtype) const
 Syntatic Sugar for creating a DataTypePattern with a data type's name. More...
 
ShapePattern HasShape (const Array< PrimExpr > &shape) const
 Syntatic Sugar for creating a ShapePattern. More...
 
SameShapeConstraint HasSameShapeAs (const DFPattern &other) const
 Syntatic Sugar for creating a ShapePattern. More...
 
DFPattern dup () const
 Syntatic Sugar for duplicating the current pattern. More...
 
 operator PatternSeq () const
 Implicit conversion from DFPattern to PatternSeq. More...
 
 TVM_DEFINE_OBJECT_REF_METHODS (DFPattern, ObjectRef, DFPatternNode)
 
- Public Member Functions inherited from tvm::runtime::ObjectRef
 ObjectRef ()=default
 default constructor More...
 
 ObjectRef (ObjectPtr< Object > data)
 Constructor from existing object ptr. More...
 
bool same_as (const ObjectRef &other) const
 Comparator. More...
 
bool operator== (const ObjectRef &other) const
 Comparator. More...
 
bool operator!= (const ObjectRef &other) const
 Comparator. More...
 
bool operator< (const ObjectRef &other) const
 Comparator. More...
 
bool defined () const
 
const Objectget () const
 
const Objectoperator-> () const
 
bool unique () const
 
int use_count () const
 
template<typename ObjectType , typename = std::enable_if_t<std::is_base_of_v<Object, ObjectType>>>
const ObjectType * as () const
 Try to downcast the internal Object to a raw pointer of a corresponding type. More...
 
template<typename ObjectRefType , typename = std::enable_if_t<std::is_base_of_v<ObjectRef, ObjectRefType>>>
Optional< ObjectRefType > as () const
 Try to downcast the ObjectRef to a Optional<T> of the requested type. More...
 

Additional Inherited Members

- Public Types inherited from tvm::runtime::ObjectRef
using ContainerType = Object
 type indicate the container type. More...
 
- Static Public Attributes inherited from tvm::runtime::ObjectRef
static constexpr bool _type_is_nullable = true
 
- Protected Member Functions inherited from tvm::runtime::ObjectRef
Objectget_mutable () const
 
- Static Protected Member Functions inherited from tvm::runtime::ObjectRef
template<typename T >
static T DowncastNoCheck (ObjectRef ref)
 Internal helper function downcast a ref without check. More...
 
static void FFIClearAfterMove (ObjectRef *ref)
 Clear the object ref data field without DecRef after we successfully moved the field. More...
 
template<typename ObjectType >
static ObjectPtr< ObjectType > GetDataPtr (const ObjectRef &ref)
 Internal helper function get data_ as ObjectPtr of ObjectType. More...
 
- Protected Attributes inherited from tvm::runtime::ObjectRef
ObjectPtr< Objectdata_
 Internal pointer that backs the reference. More...
 

Detailed Description

Managed reference to dataflow patterns.

See also
DFPatternNode

Member Function Documentation

◆ dup()

DFPattern tvm::relax::DFPattern::dup ( ) const

Syntatic Sugar for duplicating the current pattern.

◆ HasAttr()

AttrPattern tvm::relax::DFPattern::HasAttr ( const Map< String, ObjectRef > &  attrs) const

Syntatic Sugar for creating an AttrPattern.

◆ HasDtype() [1/2]

DataTypePattern tvm::relax::DFPattern::HasDtype ( const DataType dtype) const

Syntatic Sugar for creating a DataTypePattern with a DataType.

◆ HasDtype() [2/2]

DataTypePattern tvm::relax::DFPattern::HasDtype ( const std::string &  dtype) const

Syntatic Sugar for creating a DataTypePattern with a data type's name.

◆ HasSameShapeAs()

SameShapeConstraint tvm::relax::DFPattern::HasSameShapeAs ( const DFPattern other) const

Syntatic Sugar for creating a ShapePattern.

◆ HasShape()

ShapePattern tvm::relax::DFPattern::HasShape ( const Array< PrimExpr > &  shape) const

Syntatic Sugar for creating a ShapePattern.

◆ HasStructInfo()

StructInfoPattern tvm::relax::DFPattern::HasStructInfo ( const StructInfo struct_info) const

Syntatic Sugar for creating a StructInfoPattern.

◆ HasType()

TypePattern tvm::relax::DFPattern::HasType ( const Type type) const

Syntatic Sugar for creating a TypePattern.

◆ operator PatternSeq()

tvm::relax::DFPattern::operator PatternSeq ( ) const

Implicit conversion from DFPattern to PatternSeq.

◆ operator&()

AndPattern tvm::relax::DFPattern::operator& ( const DFPattern other) const

Syntatic Sugar for creating an AndPattern.

◆ operator()() [1/2]

template<typename... Args>
CallPattern tvm::relax::DFPattern::operator() ( Args &&...  args) const

Syntatic Sugar for creating a CallPattern.

Implementation of the templated CallPattern syntax sugar.

◆ operator()() [2/2]

CallPattern tvm::relax::DFPattern::operator() ( const std::vector< DFPattern > &  args) const

Syntatic Sugar for creating a CallPattern.

◆ operator|()

OrPattern tvm::relax::DFPattern::operator| ( const DFPattern other) const

Syntatic Sugar for creating an OrPattern.

◆ operator~()

NotPattern tvm::relax::DFPattern::operator~ ( ) const

Syntatic Sugar for creating a NotPattern.

◆ TVM_DEFINE_OBJECT_REF_METHODS()

tvm::relax::DFPattern::TVM_DEFINE_OBJECT_REF_METHODS ( DFPattern  ,
ObjectRef  ,
DFPatternNode   
)

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