Table of Contents

Class TParseTreeNode

Namespace
gudusoft.gsqlparser.nodes
Assembly
gudusoft.gsqlparser.dll

This class is the root class for all parse tree nodes.
Check NodeType for type of this node.
This node includes all tokens from startToken and endToken

public abstract class TParseTreeNode : Visitable
Inheritance
TParseTreeNode
Implements
Derived
Inherited Members

Constructors

TParseTreeNode()

public TParseTreeNode()

TParseTreeNode(EDbVendor)

public TParseTreeNode(EDbVendor dbvendor)

Parameters

dbvendor EDbVendor

Fields

_stringValue

protected string _stringValue

Field Value

string

dbvendor

SQL dialect of this node.

public EDbVendor dbvendor

Field Value

EDbVendor

Properties

ColumnNo

public virtual long ColumnNo { get; }

Property Value

long

DummyTag

public virtual int DummyTag { get; set; }

Property Value

int

Gsqlparser

public virtual TGSqlParser Gsqlparser { get; set; }

Property Value

TGSqlParser

IncludingComment

public virtual bool IncludingComment { set; }

Property Value

bool

LineNo

public virtual long LineNo { get; }

Property Value

long

NodeType

Set the node type for this node.

public virtual int NodeType { get; set; }

Property Value

int

SourceTokenList

public TSourceTokenList SourceTokenList { get; set; }

Property Value

TSourceTokenList

String

String representation of this node. this String value is the same as ToString(bool) after node generated by parser. If string value is set manually later, then this value is different from ToString(bool).

public virtual string String { get; set; }

Property Value

string

endToken

the line number of the first character for current token.

public TSourceToken endToken { get; set; }

Property Value

TSourceToken

startToken

public TSourceToken startToken { get; set; }

Property Value

TSourceToken

Methods

IsIncludingOriginalTokens()

Return true when this node is built by parser.

public bool IsIncludingOriginalTokens()

Returns

bool

IsUnderlyingTokenChanged()

Check whether tokens consist this node and it's sub-node had been modified.

public bool IsUnderlyingTokenChanged()

Returns

bool

ToScript()

Text string of this node, return value is the same as {@link #toString()} if this node is not modified after created by parser. If this node was modified, then use this method to return string representation instead of {@link #toString()}

public string ToScript()

Returns

string

ToString()

String representation of parse tree node including sub parse tree node. This string was generated by collecting text from the start token of this node to the end token of this node. If this node was modified later, then use toScript() to return string representation instead.

public override string ToString()

Returns

string

string representation of parse tree node including sub parse tree node.

ToString(bool)

public string ToString(bool isModified)

Parameters

isModified bool

Returns

string

accept(TParseTreeVisitor)

public virtual void accept(TParseTreeVisitor v)

Parameters

v TParseTreeVisitor

acceptChildren(TParseTreeVisitor)

public virtual void acceptChildren(TParseTreeVisitor v)

Parameters

v TParseTreeVisitor

addAllMyTokensToTokenList(TSourceTokenList, int)

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 .

public virtual int addAllMyTokensToTokenList(TSourceTokenList targetList, int index)

Parameters

targetList TSourceTokenList
index int

Returns

int

doParse(TCustomSqlStatement, ESqlClause)

analyze this node

public virtual void doParse(TCustomSqlStatement psql, ESqlClause plocation)

Parameters

psql TCustomSqlStatement
plocation ESqlClause

getEndToken()

public virtual TSourceToken getEndToken()

Returns

TSourceToken

the last token in this node

getStartToken()

public virtual TSourceToken getStartToken()

Returns

TSourceToken

init(object)

Initialize a query tree node.

public virtual void init(object arg1)

Parameters

arg1 object

init(object, object)

public virtual void init(object arg1, object arg2)

Parameters

arg1 object
arg2 object

init(object, object, object)

public virtual void init(object arg1, object arg2, object arg3)

Parameters

arg1 object
arg2 object
arg3 object

init(object, object, object, object)

public virtual void init(object arg1, object arg2, object arg3, object arg4)

Parameters

arg1 object
arg2 object
arg3 object
arg4 object

init(object, object, object, object, object)

public virtual void init(object arg1, object arg2, object arg3, object arg4, object arg5)

Parameters

arg1 object
arg2 object
arg3 object
arg4 object
arg5 object

init(object, object, object, object, object, object)

public virtual void init(object arg1, object arg2, object arg3, object arg4, object arg5, object arg6)

Parameters

arg1 object
arg2 object
arg3 object
arg4 object
arg5 object
arg6 object

setChanged()

Tell the node that it had been modified.

public void setChanged()

setEndToken(TSourceToken)

public virtual void setEndToken(TSourceToken endToken)

Parameters

endToken TSourceToken

setEndToken(TParseTreeNode)

public virtual void setEndToken(TParseTreeNode endNode)

Parameters

endNode TParseTreeNode

setEndToken<T>(List<T>)

public virtual void setEndToken<T>(List<T> pList)

Parameters

pList List<T>

Type Parameters

T

setStartToken(TSourceToken)

public virtual void setStartToken(TSourceToken startToken)

Parameters

startToken TSourceToken

setStartToken(TParseTreeNode)

public virtual void setStartToken(TParseTreeNode startNode)

Parameters

startNode TParseTreeNode

setStartToken<T>(List<T>)

public virtual void setStartToken<T>(List<T> pList)

Parameters

pList List<T>

Type Parameters

T