com.mckoi.database.interpret
Class SelectColumn

java.lang.Object
  extended by com.mckoi.database.interpret.SelectColumn
All Implemented Interfaces:
StatementTreeObject, java.io.Serializable, java.lang.Cloneable

public final class SelectColumn
extends java.lang.Object
implements java.io.Serializable, StatementTreeObject, java.lang.Cloneable

Represents a column selected to be in the output of a select statement. This includes being either an aggregate function, a column or "*" which is the entire set of columns.

Author:
Tobias Downer
See Also:
Serialized Form

Field Summary
 java.lang.String alias
          The alias of this column string.
 Expression expression
          The expression of this column.
 java.lang.String glob_name
          If the column represents a glob of columns (eg.
 Variable internal_name
          The name of this column used internally to reference it.
 Variable resolved_name
          The fully resolved name that this column is given in the resulting table.
 
Constructor Summary
SelectColumn()
           
 
Method Summary
 java.lang.Object clone()
          Performs a DEEP clone of this object if it is mutable, or a deep clone of its mutable members.
 void prepareExpressions(ExpressionPreparer preparer)
          Prepares all expressions in this statement tree object by passing the ExpressionPreparer object to the 'prepare' method of the expression.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

glob_name

public java.lang.String glob_name
If the column represents a glob of columns (eg. 'Part.*' or '*') then this is set to the glob string and 'expression' is left blank.


resolved_name

public Variable resolved_name
The fully resolved name that this column is given in the resulting table.


alias

public java.lang.String alias
The alias of this column string.


expression

public Expression expression
The expression of this column. This is only NOT set when name == "*" indicating all the columns.


internal_name

public Variable internal_name
The name of this column used internally to reference it.

Constructor Detail

SelectColumn

public SelectColumn()
Method Detail

prepareExpressions

public void prepareExpressions(ExpressionPreparer preparer)
                        throws DatabaseException
Description copied from interface: StatementTreeObject
Prepares all expressions in this statement tree object by passing the ExpressionPreparer object to the 'prepare' method of the expression.

Specified by:
prepareExpressions in interface StatementTreeObject
Throws:
DatabaseException

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Description copied from interface: StatementTreeObject
Performs a DEEP clone of this object if it is mutable, or a deep clone of its mutable members. If the object is immutable then it may return 'this'.

Specified by:
clone in interface StatementTreeObject
Overrides:
clone in class java.lang.Object
Throws:
java.lang.CloneNotSupportedException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object