taco-db  0.1.0
Namespaces | Macros | Enumerations | Functions
NodeTag.h File Reference
#include "tdb.h"
#include "utils/misc.h"
#include "utils/tree/node_tags.inc"

Go to the source code of this file.

Namespaces

 taco
 

Macros

#define NODE_TAG(clsname, ...)    CONCAT(T_, clsname) IF_NONEMPTY(CADR(__VA_ARGS__), = CADR(__VA_ARGS__)),
 
#define TAG(nodeclsname)   CONCAT(NodeTag::T_, nodeclsname)
 

Enumerations

enum class  taco::NodeTag : uint16_t { taco::T_TreeNode = 0 , taco::T_InvalidTag = 0xFFFF }
 

Functions

const char * taco::node_tag_name (NodeTag tag)
 Returns the class name of the tag's class. More...
 
NodeTag taco::node_tag_base (NodeTag tag)
 Returns the immediate base class of `‘tag’'. More...
 
bool taco::node_tag_is_a (NodeTag tag1, NodeTag tag2)
 Returns whether tag1'' is a class derived fromtag2''. More...
 

Macro Definition Documentation

◆ NODE_TAG

#define NODE_TAG (   clsname,
  ... 
)     CONCAT(T_, clsname) IF_NONEMPTY(CADR(__VA_ARGS__), = CADR(__VA_ARGS__)),

◆ TAG

#define TAG (   nodeclsname)    CONCAT(NodeTag::T_, nodeclsname)