Package gavo :: Package adql :: Module tree
[frames] | no frames]

Module tree

source code

Trees of ADQL expressions and operations on them.

Functions
 
registerNode(node)
registers a node class or a symbolAction from a module other than node.
source code
 
getTreeBuildingGrammar()
returns a pyparsing symbol that can parse ADQL expressions into simple trees of ADQLNodes.
source code
Variables
  __package__ = 'gavo.adql'
Function Details

registerNode(node)

source code 

registers a node class or a symbolAction from a module other than node.

This is a bit of magic -- some module can call this to register a node class that is then bound to some parse action as if it were in nodes.

I'd expect this to be messy in the presence of chaotic imports (when classes are not necessarily singletons and a single module can be imported more than once. For now, I ignore this potential bomb.

getTreeBuildingGrammar()

source code 

returns a pyparsing symbol that can parse ADQL expressions into simple trees of ADQLNodes.

This symbol is shared, so don't change anything on it.