tvm
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tvm::script::printer::OperationDocNode Class Reference

Doc that represents operation. More...

#include <doc.h>

Inheritance diagram for tvm::script::printer::OperationDocNode:
Collaboration diagram for tvm::script::printer::OperationDocNode:

Public Types

enum class  Kind : int32_t {
  kUnaryStart = 0 , kUSub = 1 , kInvert = 2 , kNot = 3 ,
  kUnaryEnd = 4 , kBinaryStart = 5 , kAdd = 6 , kSub = 7 ,
  kMult = 8 , kDiv = 9 , kFloorDiv = 10 , kMod = 11 ,
  kPow = 12 , kLShift = 13 , kRShift = 14 , kBitAnd = 15 ,
  kBitOr = 16 , kBitXor = 17 , kLt = 18 , kLtE = 19 ,
  kEq = 20 , kNotEq = 21 , kGt = 22 , kGtE = 23 ,
  kAnd = 24 , kOr = 25 , kBinaryEnd = 26 , kSpecialStart = 27 ,
  kIfThenElse = 28 , kSpecialEnd = 29
}
 

Public Member Functions

 TVM_FFI_DECLARE_OBJECT_INFO_FINAL ("script.printer.OperationDoc", OperationDocNode, ExprDocNode)
 
- Public Member Functions inherited from tvm::script::printer::ExprDocNode
ExprDoc Attr (ffi::String attr) const
 Create a doc representing attribute access on the current ExprDoc. More...
 
ExprDoc operator[] (ffi::Array< Doc > indices) const
 Create a doc representing index access on the current ExprDoc. More...
 
ExprDoc Call (ffi::Array< ExprDoc, void > args) const
 Create a doc representing calling the current ExprDoc. More...
 
ExprDoc Call (ffi::Array< ExprDoc, void > args, ffi::Array< ffi::String > kwargs_keys, ffi::Array< ExprDoc, void > kwargs_values) const
 Create a doc representing attribute access on the current ExprDoc. More...
 
 TVM_FFI_DECLARE_OBJECT_INFO ("script.printer.ExprDoc", ExprDocNode, DocNode)
 
- Public Member Functions inherited from tvm::script::printer::DocNode
 TVM_FFI_DECLARE_OBJECT_INFO ("script.printer.Doc", DocNode, Object)
 
virtual ~DocNode ()=default
 

Static Public Member Functions

static void RegisterReflection ()
 
- Static Public Member Functions inherited from tvm::script::printer::ExprDocNode
static void RegisterReflection ()
 
- Static Public Member Functions inherited from tvm::script::printer::DocNode
static void RegisterReflection ()
 

Public Attributes

Kind kind
 The kind of operation (operator) More...
 
ffi::Array< ExprDocoperands
 Operands of this expression. More...
 
- Public Attributes inherited from tvm::script::printer::DocNode
ffi::Array< ffi::reflection::AccessPath > source_paths
 The list of object paths of the source IR node. More...
 

Additional Inherited Members

- Static Public Attributes inherited from tvm::script::printer::DocNode
static constexpr bool _type_mutable = true
 

Detailed Description

Doc that represents operation.

It can be unary, binary and other special operators (for example, the if-then-else expression).

See also
OperationDoc

Member Enumeration Documentation

◆ Kind

Enumerator
kUnaryStart 
kUSub 
kInvert 
kNot 
kUnaryEnd 
kBinaryStart 
kAdd 
kSub 
kMult 
kDiv 
kFloorDiv 
kMod 
kPow 
kLShift 
kRShift 
kBitAnd 
kBitOr 
kBitXor 
kLt 
kLtE 
kEq 
kNotEq 
kGt 
kGtE 
kAnd 
kOr 
kBinaryEnd 
kSpecialStart 
kIfThenElse 
kSpecialEnd 

Member Function Documentation

◆ RegisterReflection()

static void tvm::script::printer::OperationDocNode::RegisterReflection ( )
inlinestatic

◆ TVM_FFI_DECLARE_OBJECT_INFO_FINAL()

tvm::script::printer::OperationDocNode::TVM_FFI_DECLARE_OBJECT_INFO_FINAL ( "script.printer.OperationDoc"  ,
OperationDocNode  ,
ExprDocNode   
)

Member Data Documentation

◆ kind

Kind tvm::script::printer::OperationDocNode::kind

The kind of operation (operator)

◆ operands

ffi::Array<ExprDoc> tvm::script::printer::OperationDocNode::operands

Operands of this expression.


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