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

#include <expr.h>

Inheritance diagram for tvm::relax::Function:
Collaboration diagram for tvm::relax::Function:

Public Member Functions

 Function (ffi::Array< Var > params, Expr body, ffi::Optional< Type > ret_ty, bool is_pure=true, DictAttrs attrs=DictAttrs(), Span span=Span())
 Construct a Relax Function. More...
 
 TVM_FFI_DEFINE_OBJECT_REF_METHODS_NULLABLE (Function, BaseFunc, FunctionNode)
 
 TVM_DEFINE_OBJECT_REF_COW_METHOD (FunctionNode)
 
- Public Member Functions inherited from tvm::BaseFunc
 TVM_FFI_DEFINE_OBJECT_REF_METHODS_NULLABLE (BaseFunc, Expr, BaseFuncNode)
 
- Public Member Functions inherited from tvm::Expr
bool operator== (const Expr &other) const =delete
 
bool operator!= (const Expr &other) const =delete
 
bool operator< (const Expr &other) const =delete
 
 TVM_FFI_DEFINE_OBJECT_REF_METHODS_NULLABLE (Expr, ffi::ObjectRef, ExprNode)
 

Static Public Member Functions

static Function CreateEmpty (ffi::Array< Var > params, Type ret_ty, bool is_pure=true, DictAttrs attrs=DictAttrs(), Span span=Span())
 Mimics the constructor but without body Expr. More...
 

Constructor & Destructor Documentation

◆ Function()

tvm::relax::Function::Function ( ffi::Array< Var params,
Expr  body,
ffi::Optional< Type ret_ty,
bool  is_pure = true,
DictAttrs  attrs = DictAttrs(),
Span  span = Span() 
)
explicit

Construct a Relax Function.

Parameters
paramsThe parameters accepted by the function
bodyThe body of the function. If this is not a SeqExpr, it will be wrapped in a SeqExpr, to satisfy the Relax IR requirement that all scopes be contained in a SeqExpr.
ret_tyThe Type returned by the function. If std::nullopt, will be inferred from the Type of the function's body.
is_pureThe purity of the function.
attrsAny attributes associated with the function. Defaults to an empty dictionary.
spanThe source span of the expression.

Member Function Documentation

◆ CreateEmpty()

static Function tvm::relax::Function::CreateEmpty ( ffi::Array< Var params,
Type  ret_ty,
bool  is_pure = true,
DictAttrs  attrs = DictAttrs(),
Span  span = Span() 
)
static

Mimics the constructor but without body Expr.

Note
ret_ty is required, since it can not deduced by the body.

◆ TVM_DEFINE_OBJECT_REF_COW_METHOD()

tvm::relax::Function::TVM_DEFINE_OBJECT_REF_COW_METHOD ( FunctionNode  )

◆ TVM_FFI_DEFINE_OBJECT_REF_METHODS_NULLABLE()

tvm::relax::Function::TVM_FFI_DEFINE_OBJECT_REF_METHODS_NULLABLE ( Function  ,
BaseFunc  ,
FunctionNode   
)

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