supported #pragmas

#pragma omit action typename
Do not emit a definition of action for this type. It is up to the programmer to supply a definition for this type. The typename needs to be fully qualified with its namespaces.
#pragma treenode typename
Asserts that pointers to this type refer to a single object or are NULL, and that following the links from this object will not return to the same object (no cycles). True of trees, and of limited validity with directed acyclic graphs.
#pragma graphnode typename
As above, except that the graph is allowed to contain cycles. It generally requires more expensive algorithms to traverse a general graph than to traverse a tree.