Package gavo :: Package adql :: Module nodes :: Class GeometryNode
[frames] | no frames]

Class GeometryNode

source code

                     object --+    
                              |    
                    CoosysMixin --+
                                  |
             object --+           |
                      |           |
utils.autonode.AutoNode --+       |
                          |       |
                   ADQLNode --+   |
                              |   |
                FieldInfoedNode --+
                                  |
                                 GeometryNode
Known Subclasses:

Nodes for geometry constructors.

In ADQL 2.1, most of these became polymorphous. For instance, circles can be constructed with a point as the first (or second, if a coosys is present) argument; that point can also be a column reference.

Also, these will always get morphed in some way (as the database certainly doesn't understand ADQL geometries). So, we're trying to give the morphers a fair chance of not getting confused despite the wild variety of argument forms and types.

stcArgs is a list of symbolic names that *might* contain stc (or similar) information. Some of the actual attributes will be None.

Flatten is only there for debugging; it'll return invalid SQL. OrigArgs is not for client consumption; clients must go through the symbolic names.

Nested Classes

Inherited from utils.autonode.AutoNode: __metaclass__

Instance Methods
 
flatten(self)
returns a string representation of the text content of the tree.
source code
 
addFieldInfo(self, context) source code
 
__init__(self, cooSys=None, origArgs=None)
x.__init__(...) initializes x; see help(type(x)) for signature
source code

Inherited from FieldInfoedNode: change

Inherited from ADQLNode: __repr__, asTree, getFlattenedChildren, iterTree

Inherited from utils.autonode.AutoNode: iterAttributes, iterChildren, iterNodeChildren, iterNodes

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Methods

Inherited from ADQLNode: fromParseResult

Inherited from utils.autonode.AutoNode: cloneFrom

Class Variables

Inherited from FieldInfoedNode: fieldInfo

Inherited from ADQLNode: type

Properties

Inherited from object: __class__

Method Details

flatten(self)

source code 

returns a string representation of the text content of the tree.

This default implementation will only work if you returned all parsed elements as children. This, in turn, is something you only want to do if you are sure that the node is question will not be morphed.

Otherwise, override it to create an SQL fragment out of the parsed attributes.

Overrides: ADQLNode.flatten
(inherited documentation)

addFieldInfo(self, context)

source code 
Overrides: FieldInfoedNode.addFieldInfo

__init__(self, cooSys=None, origArgs=None)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
(inherited documentation)