Overview

Node builder class. This class is used to build graph nodes that comply with the IR specifications. This class provides chain APIs to define the IR input, output, and attributes of a node, ensuring that the generated node complies with the IR specifications. This class is called internally by ES generated APIs. If you directly build a graph by calling an ES generated API, you do not need to be aware of this class. To customize ES APIs, use the capabilities provided by this class to build nodes.

Header Files to Be Included

1
#include "compliant_node_builder.h"

Public Member Functions

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
explicit CompliantNodeBuilder(ge::Graph *graph)
~CompliantNodeBuilder()
CompliantNodeBuilder(CompliantNodeBuilder &&) noexcept
CompliantNodeBuilder(const CompliantNodeBuilder &)
CompliantNodeBuilder &OpType(const char_t *type)
CompliantNodeBuilder &IrDefInputs(std::vector<IrInputDef> input_ir_def)
CompliantNodeBuilder &IrDefOutputs(std::vector<IrOutputDef> output_ir_def)
CompliantNodeBuilder &IrDefAttrs(std::vector<IrAttrDef> attr_ir_def)
CompliantNodeBuilder &Name(const char_t *name)
CompliantNodeBuilder &InstanceDynamicInputNum(const char_t *ir_name, int32_t num)
CompliantNodeBuilder &InstanceDynamicOutputNum(const char_t *ir_name, int32_t num)
CompliantNodeBuilder &InstanceOutputDataType(const char_t *name, ge::DataType data_type)
CompliantNodeBuilder &InstanceOutputShape(const char_t *name, const std::vector<int64_t> &shape)
CompliantNodeBuilder &InstanceOutputOriginShape(const char_t *name, const std::vector<int64_t> &shape)
CompliantNodeBuilder &InstanceOutputStorageShape(const char_t *name, const std::vector<int64_t> &shape)
CompliantNodeBuilder &InstanceOutputFormat(const char_t *name, ge::Format format)
CompliantNodeBuilder &InstanceOutputOriginFormat(const char_t *name, ge::Format format)
CompliantNodeBuilder &InstanceOutputStorageFormat(const char_t *name, ge::Format format)
ge::GNode Build() const

External Functions

1
2
3
4
5
AttrValue CreateFrom(T &&t) 
bool ValuesEqual(const T &a, const T &b)
bool ValuesEqual(const std::vector<T> &a, const std::vector<T> &b)
AttrValue CreateFromIfNotEqual(T &&value, typename std::decay<T>::type default_value)
graphStatus AddEdgeAndUpdatePeerDesc(Graph &graph, GNode &src_node, int32_t src_port_index, GNode &dst_node, int32_t dst_port_index) 

Enumerations

1
2
3
enum IrAttrType  
enum IrInputType 
enum IrOutputType

Structures

1
2
3
struct IrAttrDef 
struct IrInputDef 
struct IrOutputDef

Internal Class

1
class AnyTypeOperator