tvm
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static 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_DECLARE_FINAL_OBJECT_INFO (OperationDocNode, ExprDocNode)
 
- Public Member Functions inherited from tvm::script::printer::ExprDocNode
ExprDoc Attr (String attr) const
 Create a doc representing attribute access on the current ExprDoc. More...
 
ExprDoc operator[] (Array< Doc > indices) const
 Create a doc representing index access on the current ExprDoc. More...
 
ExprDoc Call (Array< ExprDoc, void > args) const
 Create a doc representing calling the current ExprDoc. More...
 
ExprDoc Call (Array< ExprDoc, void > args, Array< String > kwargs_keys, Array< ExprDoc, void > kwargs_values) const
 Create a doc representing attribute access on the current ExprDoc. More...
 
 TVM_DECLARE_BASE_OBJECT_INFO (ExprDocNode, DocNode)
 
- Public Member Functions inherited from tvm::script::printer::DocNode
 TVM_DECLARE_BASE_OBJECT_INFO (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...
 
Array< ExprDocoperands
 Operands of this expression. More...
 
- Public Attributes inherited from tvm::script::printer::DocNode
Array< ffi::reflection::AccessPath > source_paths
 The list of object paths of the source IR node. More...
 

Static Public Attributes

static constexpr const char * _type_key = "script.printer.OperationDoc"
 
- Static Public Attributes inherited from tvm::script::printer::ExprDocNode
static constexpr const char * _type_key = "script.printer.ExprDoc"
 
- Static Public Attributes inherited from tvm::script::printer::DocNode
static constexpr const char * _type_key = "script.printer.Doc"
 
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_DECLARE_FINAL_OBJECT_INFO()

tvm::script::printer::OperationDocNode::TVM_DECLARE_FINAL_OBJECT_INFO ( OperationDocNode  ,
ExprDocNode   
)

Member Data Documentation

◆ _type_key

constexpr const char* tvm::script::printer::OperationDocNode::_type_key = "script.printer.OperationDoc"
staticconstexpr

◆ kind

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

The kind of operation (operator)

◆ operands

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

Operands of this expression.


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