gudusoft.gsqlparser.nodes
Class TParseTreeNode

java.lang.Object
  extended by gudusoft.gsqlparser.nodes.TParseTreeNode
All Implemented Interfaces:
Visitable
Direct Known Subclasses:
TAliasClause, TAlterTableOption, TAlterTableSqlNode, TAnalyticFunction, TArrayAccess, TAutomaticProperty, TBindArgument, TBlockSqlNode, TBreakSqlNode, TCallSpec, TCaseExpression, TCloseSqlNode, TColumnDefinition, TColumnReference, TCommentSqlNode, TCompoundDmlTriggerClause, TCompoundSqlNode, TComputeClause, TComputeClauseItem, TComputeExpr, TConstant, TConstraint, TContainsTable, TContinueSqlNode, TCreateDatabaseSqlNode, TCreateDirectorySqlNode, TCreateFunctionSqlNode, TCreateIndexSqlNode, TCreateMaterializedViewLogSqlNode, TCreateMaterializedViewSqlNode, TCreatePackageSqlNode, TCreateProcedureSqlNode, TCreateSequenceSqlNode, TCreateSynonymSqlNode, TCreateTableSqlNode, TCreateTriggerSqlNode, TCreateViewSqlNode, TCTE, TCustomSqlStatement, TDataChangeTable, TDatatypeAttribute, TDatetimeExpression, TDeclareSqlNode, TDeclareVariable, TDeleteSqlNode, TDmlEventClause, TDropDbObjectSqlNode, TDropIndexItem, TDropIndexSqlNode, TDropTableSqlNode, TDropViewSqlNode, TDummy, TElseIfSqlNode, TExceptionClause, TExceptionHandler, TExecImmeNode, TExecParameter, TExecuteAsSqlNode, TExecuteSqlNode, TExpandOnClause, TExpression, TFetchFirstClause, TFetchSqlNode, TFlashback, TForSqlNode, TForUpdate, TFrameExclusionClause, TFunctionCall, TGrantSqlNode, TGroupBy, TGroupByItem, TGroupingExpressionItem, TGroupingSet, TGroupingSetItem, THierarchical, TIfSqlNode, TIncludeColumns, TIndices, TIndirection, TInExpr, TInsertCondition, TInsertIntoValue, TInsertSqlNode, TIntervalExpression, TIntoClause, TIsolationClause, TJoinItem, TKeepDenseRankClause, TKeyAction, TKeyReference, TLimitClause, TLockingClause, TLoopSqlNode, TMdxCalcPropNode, TMdxCallNode, TMdxCreateMemberNode, TMdxCreateSessionCubeNode, TMdxCreateSubCubeNode, TMdxDimContentNode, TMdxDrillthroughNode, TMdxExpNode, TMdxKeySegment, TMdxLevelContentNode, TMdxNameSegment, TMdxObjectNode, TMdxScopeNode, TMdxSelectNode, TMdxWhereNode, TMdxWithNode, TMergeDeleteClause, TMergeInsertClause, TMergeSqlNode, TMergeUpdateClause, TMergeWhenClause, TMssqlBeginDialogSqlNode, TMssqlBeginTranSqlNode, TMssqlBulkInsertSqlNode, TMssqlCreateTriggerUpdateColumn, TMssqlDeallocateSqlNode, TMssqlEndConversationSqlNode, TMssqlGotoSqlNode, TMssqlLabelSqlNode, TMssqlRaiserrorSqlNode, TMssqlRevertSqlNode, TMssqlSendOnConversationSqlNode, TMssqlSetSqlNode, TMssqlStmtStubSqlNode, TMssqlUpdateTextSqlNode, TMultiTarget, TMySQLCreateTableOption, TMySQLIndexStorageType, TNewVariantTypeArgument, TNodeWithAliasClause, TNonDmlTriggerClause, TObjectName, TObjectReference, TOffsetClause, TOpenDatasource, TOpenQuery, TOpenRowSet, TOpenSqlNode, TOpenXML, TOptimizeForClause, TOrderBy, TOrderByItem, TOutputClause, TOutputFormatPhrase, TParameterDeclaration, TParseTreeNodeList, TPartitionClause, TPTNodeList, TPxGranule, TQualifyClause, TRelationExpr, TRepeatSqlNode, TRestrictionClause, TReturningClause, TReturnSqlNode, TRevokeSqlNode, TRollupCube, TSampleClause, TSelectDistinct, TSelectLimit, TSelectSqlNode, TSetSqlNode, TSimpleDmlTriggerClause, TStatementList, TStatementSqlNode, TStubStmtSqlNode, TTableElement, TTableHint, TTableReference, TTableSample, TTableSamplePart, TTeradataStmtStubSqlNode, TTeradataWithClause, TTeradataWithClauseItem, TTopClause, TTriggerAction, TTrimArgument, TTruncateTableSqlNode, TTypeAttribute, TTypeName, TUpdateSqlNode, TValueClause, TValueRowItem, TViewAliasClause, TViewAliasItem, TWhenClauseItem, TWhereClause, TWhileSqlNode, TWindowClause, TWindowDef

public abstract class TParseTreeNode
extends java.lang.Object
implements Visitable

TParseNode is the root class for all parse tree nodes.


Constructor Summary
TParseTreeNode()
           
 
Method Summary
 void accept(TParseTreeVisitor v)
           
 int addAllMyTokensToTokenList(TSourceTokenList targetList, int index)
          Inserts tokens(from start token to end token ) of this parse tree node at the specified position in this list.
 void doParse(TCustomSqlStatement psql, ESqlClause plocation)
          analyze this node
 long getColumnNo()
           
 int getDummyTag()
           
 TSourceToken getEndToken()
           
 TGSqlParser getGsqlparser()
           
 long getLineNo()
           
 int getNodeType()
           
 TSourceToken getStartToken()
           
 void init(java.lang.Object arg1)
          Initialize a query tree node.
 void init(java.lang.Object arg1, java.lang.Object arg2)
           
 void init(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
           
 void init(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
           
 void init(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
           
 void init(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
           
 void setDummyTag(int dummyTag)
           
 void setEndToken(TParseTreeNode endNode)
           
 void setEndToken(TSourceToken endToken)
           
 void setGsqlparser(TGSqlParser gsqlparser)
           
 void setNodeType(int nodeType)
          Set the node type for this node.
 void setStartToken(TParseTreeNode startNode)
           
 void setStartToken(TSourceToken startToken)
           
 void setString(java.lang.String sqlSegment)
          if sqlSegment was empty or a single space, then remove this node from parse tree otherwise, replace text of this parse tree node with sqlSegment
 java.lang.String toString()
          String representation of parse tree node including sub parse tree node
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TParseTreeNode

public TParseTreeNode()
Method Detail

getGsqlparser

public TGSqlParser getGsqlparser()

setGsqlparser

public void setGsqlparser(TGSqlParser gsqlparser)

setDummyTag

public void setDummyTag(int dummyTag)

getDummyTag

public int getDummyTag()

getStartToken

public TSourceToken getStartToken()

getEndToken

public TSourceToken getEndToken()

getColumnNo

public long getColumnNo()

getLineNo

public long getLineNo()

setNodeType

public void setNodeType(int nodeType)
Set the node type for this node.

Parameters:
nodeType - The node type.

getNodeType

public int getNodeType()

init

public void init(java.lang.Object arg1)
Initialize a query tree node.


init

public void init(java.lang.Object arg1,
                 java.lang.Object arg2)

init

public void init(java.lang.Object arg1,
                 java.lang.Object arg2,
                 java.lang.Object arg3)

init

public void init(java.lang.Object arg1,
                 java.lang.Object arg2,
                 java.lang.Object arg3,
                 java.lang.Object arg4)

init

public void init(java.lang.Object arg1,
                 java.lang.Object arg2,
                 java.lang.Object arg3,
                 java.lang.Object arg4,
                 java.lang.Object arg5)

init

public void init(java.lang.Object arg1,
                 java.lang.Object arg2,
                 java.lang.Object arg3,
                 java.lang.Object arg4,
                 java.lang.Object arg5,
                 java.lang.Object arg6)

doParse

public void doParse(TCustomSqlStatement psql,
                    ESqlClause plocation)
analyze this node


setStartToken

public void setStartToken(TSourceToken startToken)

setStartToken

public void setStartToken(TParseTreeNode startNode)

setEndToken

public void setEndToken(TSourceToken endToken)

setEndToken

public void setEndToken(TParseTreeNode endNode)

setString

public void setString(java.lang.String sqlSegment)
if sqlSegment was empty or a single space, then remove this node from parse tree otherwise, replace text of this parse tree node with sqlSegment

Parameters:
sqlSegment - that override original text of this node.

toString

public java.lang.String toString()
String representation of parse tree node including sub parse tree node

select f1 from t1 where f2 > 3

toString() of this select statement will return whole text above including column, table and where condition.

if we change where condition to "f2 = 3" by using setString(String) of TWhereClause.getCondition() parse tree node,

then, toString() of this select statement will return "select f1 from t1 where f2 = 3"

Overrides:
toString in class java.lang.Object
Returns:
string representation of parse tree node including sub parse tree node.

addAllMyTokensToTokenList

public int addAllMyTokensToTokenList(TSourceTokenList targetList,
                                     int index)
Inserts tokens(from start token to end token ) of this parse tree node at the specified position in this list. Shifts the element currently at that position (if any) and any subsequent elements to the right .


accept

public void accept(TParseTreeVisitor v)
Specified by:
accept in interface Visitable