The parse tree structure has a 1 to 1 correspondence with the
yacc grammar. The members of the union in sql_tree_t are mostly
named after the syntactic element and the constant that identifies
them. There are however some points worth noting:
Literals - All boxes whose tag is not DV_ARRAY_OF_POINTER are
considered literals and may appear in all places where a literal is
Identifier Case - The case conversion of identifiers is
controlled by the CaseMode ini file setting. When introducing a
constant name referencing a VSE, one should use sqlp_box_id_upcase
to get the right case for all modes.
The identifiers, once in the tree, are compared case
sensitively in all modes case modes except 2.
Hook functions should use the appropriate comparison functions
for the desired case sensitivity.
When generating references to names the case should be correct
as defined by the case mode.