tree-gen
C++ code generator for tree structures
|
Represents a field. More...
Public Attributes | |
EdgeType | type |
The edge type for the field. More... | |
std::shared_ptr< Node > | node_type |
The field type, if any (depends on type). More... | |
std::string | prim_type |
The primitive type name, if any (depends on type). More... | |
std::string | py_prim_type |
The primitive type name, if any (depends on type). More... | |
std::string | py_multi_type |
The primitive Multi* type name in the Python world, if any (depends on type and ext_type). More... | |
std::string | name |
Class member name. More... | |
std::string | doc |
Class member documentation. More... | |
EdgeType | ext_type |
External node type. More... | |
Represents a field.
Definition at line 679 of file tree-gen.hpp.
#include <tree-gen.hpp>
EdgeType tree_gen::Field::type |
The edge type for the field.
Definition at line 684 of file tree-gen.hpp.
std::shared_ptr<Node> tree_gen::Field::node_type |
The field type, if any (depends on type).
Definition at line 689 of file tree-gen.hpp.
std::string tree_gen::Field::prim_type |
The primitive type name, if any (depends on type).
This includes the edge template instantiation for external nodes. If type is not Prim
, this is used for storing the node name before name resolution.
Definition at line 696 of file tree-gen.hpp.
std::string tree_gen::Field::py_prim_type |
The primitive type name, if any (depends on type).
This is intended for Python, and thus does not have the edge template instantiation (because Python doesn't have templates, and the edges are implicit rather than explicit classes) and uses . for namespace separation rather than ::.
Definition at line 704 of file tree-gen.hpp.
std::string tree_gen::Field::py_multi_type |
The primitive Multi* type name in the Python world, if any (depends on type and ext_type).
Definition at line 710 of file tree-gen.hpp.
std::string tree_gen::Field::name |
Class member name.
Definition at line 715 of file tree-gen.hpp.
std::string tree_gen::Field::doc |
Class member documentation.
Definition at line 720 of file tree-gen.hpp.
EdgeType tree_gen::Field::ext_type |
External node type.
This is valid when type
is Prim. If this is Prim as well, then it's actually a primitive, otherwise it's a node from another tree.
Definition at line 727 of file tree-gen.hpp.