Skip to content

antlr-ng Tool Class Hierarchy / index / GrammarAST

Class: GrammarAST ​

A tree node that is wrapper for a Token object.

Extends ​

Implements ​

  • IGrammarAST

Constructors ​

Constructor ​

ts
new GrammarAST(nodeOrToken?): GrammarAST;

Parameters ​

nodeOrToken? ​

Token | GrammarAST

Returns ​

GrammarAST

Overrides ​

CommonTree.constructor

Constructor ​

ts
new GrammarAST(
   type, 
   t?, 
   text?): GrammarAST;

Parameters ​

type ​

number

t? ​

Token

text? ​

string

Returns ​

GrammarAST

Overrides ​

ts
CommonTree.constructor

Properties ​

astType ​

ts
readonly astType: string = "GrammarAST";

A discriminator to distinguish between different grammar AST types without creating a circular dependency.

Implementation of ​

ts
IGrammarAST.astType

atnState? ​

ts
optional atnState: ATNState;

If we build an ATN, we make AST node point at left edge of ATN construct

Implementation of ​

ts
IGrammarAST.atnState

childIndex ​

ts
childIndex: number = -1;

What index is this node in the child list? Range: 0..n-1

Implementation of ​

ts
IGrammarAST.childIndex

Inherited from ​

CommonTree.childIndex


children ​

ts
children: CommonTree[] = [];

Implementation of ​

ts
IGrammarAST.children

Inherited from ​

CommonTree.children


g ​

ts
g: Grammar;

For process AST nodes from imported grammars.

Implementation of ​

ts
IGrammarAST.g

parent ​

ts
parent: null | CommonTree = null;

Who is the parent node of this node? If null, implies node is root.

Implementation of ​

ts
IGrammarAST.parent

Inherited from ​

CommonTree.parent


startIndex ​

ts
startIndex: number = -1;

What token indexes bracket all tokens associated with this node and below?

Implementation of ​

ts
IGrammarAST.startIndex

Inherited from ​

CommonTree.startIndex


stopIndex ​

ts
stopIndex: number = -1;

What token indexes bracket all tokens associated with this node and below?

Implementation of ​

ts
IGrammarAST.stopIndex

Inherited from ​

CommonTree.stopIndex


textOverride ​

ts
textOverride: string;

Implementation of ​

ts
IGrammarAST.textOverride

token? ​

ts
optional token: Token;

A single token is the payload.

Implementation of ​

ts
IGrammarAST.token

Inherited from ​

CommonTree.token

Methods ​

addChild() ​

ts
addChild(t?): void;

Adds t as child of this node.

Warning: if t has no children, but child does and child isNil then this routine moves children to t via t.children = child.children, i.e., without copying the array.

Parameters ​

t? ​

CommonTree

The child to add.

Returns ​

void

Implementation of ​

ts
IGrammarAST.addChild

Inherited from ​

CommonTree.addChild


addChildren() ​

ts
addChildren(kids): void;

Adds all elements of kids list as children of this node.

Parameters ​

kids ​

CommonTree[]

The children to add.

Returns ​

void

Implementation of ​

ts
IGrammarAST.addChildren

Inherited from ​

CommonTree.addChildren


deleteChild() ​

Call Signature ​

ts
deleteChild(i): null | CommonTree;
Parameters ​
i ​

number

Returns ​

null | CommonTree

Implementation of ​
ts
IGrammarAST.deleteChild
Overrides ​

CommonTree.deleteChild

Call Signature ​

ts
deleteChild(t): boolean;
Parameters ​
t ​

CommonTree

Returns ​

boolean

Implementation of ​
ts
IGrammarAST.deleteChild
Overrides ​
ts
CommonTree.deleteChild

dupNode() ​

ts
dupNode(): GrammarAST;

Returns ​

GrammarAST

Implementation of ​

ts
IGrammarAST.dupNode

Overrides ​

CommonTree.dupNode


freshenParentAndChildIndexes() ​

ts
freshenParentAndChildIndexes(offset?): void;

Sets the parent and child index values for all child of t.

Parameters ​

offset? ​

number

The index to start from.

Returns ​

void

Implementation of ​

ts
IGrammarAST.freshenParentAndChildIndexes

Inherited from ​

CommonTree.freshenParentAndChildIndexes


getAllChildrenWithType() ​

ts
getAllChildrenWithType(type): GrammarAST[];

Parameters ​

type ​

number

Returns ​

GrammarAST[]

Implementation of ​

ts
IGrammarAST.getAllChildrenWithType

getAltLabel() ​

ts
getAltLabel(): null | string;

Walk ancestors of this node until we find ALT with alt!=null or leftRecursiveAltInfo!=null. Then grab label if any. If not a rule element, just returns null.

Returns ​

null | string

Implementation of ​

ts
IGrammarAST.getAltLabel

getAncestor() ​

ts
getAncestor(ttype): null | CommonTree;

Walks upwards and get first ancestor with this token type.

Parameters ​

ttype ​

number

The token type to check for.

Returns ​

null | CommonTree

The first ancestor of this node with the specified token type, or null if no ancestor with the type exists.

Implementation of ​

ts
IGrammarAST.getAncestor

Inherited from ​

CommonTree.getAncestor


getAncestors() ​

ts
protected getAncestors(): null | CommonTree[];

Returns ​

null | CommonTree[]

a list of all ancestors of this node. The first node of list is the root and the last is the parent of this node.

Implementation of ​

ts
IGrammarAST.getAncestors

Inherited from ​

CommonTree.getAncestors


getCharPositionInLine() ​

ts
getCharPositionInLine(): number;

Returns ​

number

Implementation of ​

ts
IGrammarAST.getCharPositionInLine

Inherited from ​

CommonTree.getCharPositionInLine


getFirstChildWithType() ​

ts
getFirstChildWithType(type): null | CommonTree;

Parameters ​

type ​

number

Returns ​

null | CommonTree

Implementation of ​

ts
IGrammarAST.getFirstChildWithType

Inherited from ​

CommonTree.getFirstChildWithType


getFirstDescendantWithType() ​

ts
getFirstDescendantWithType(typeOrTypes): null | CommonTree;

Parameters ​

typeOrTypes ​

number | BitSet

Returns ​

null | CommonTree

Implementation of ​

ts
IGrammarAST.getFirstDescendantWithType

getLine() ​

ts
getLine(): number;

Returns ​

number

Implementation of ​

ts
IGrammarAST.getLine

Inherited from ​

CommonTree.getLine


getNodesWithType() ​

ts
getNodesWithType(typeOrTypes): GrammarAST[];

Parameters ​

typeOrTypes ​

null | number | IntervalSet

Returns ​

GrammarAST[]

Implementation of ​

ts
IGrammarAST.getNodesWithType

getNodesWithTypePreorderDFS() ​

ts
getNodesWithTypePreorderDFS(types): GrammarAST[];

Parameters ​

types ​

IntervalSet

Returns ​

GrammarAST[]

Implementation of ​

ts
IGrammarAST.getNodesWithTypePreorderDFS

getNodeWithTokenIndex() ​

ts
getNodeWithTokenIndex(index): null | GrammarAST;

Parameters ​

index ​

number

Returns ​

null | GrammarAST

Implementation of ​

ts
IGrammarAST.getNodeWithTokenIndex

getSourceInterval() ​

ts
getSourceInterval(): Interval;

Returns ​

Interval

Implementation of ​

ts
IGrammarAST.getSourceInterval

Inherited from ​

CommonTree.getSourceInterval


getText() ​

ts
getText(): string;

Returns ​

string

Implementation of ​

ts
IGrammarAST.getText

Inherited from ​

CommonTree.getText


getTokenStartIndex() ​

ts
getTokenStartIndex(): number;

Returns ​

number

Implementation of ​

ts
IGrammarAST.getTokenStartIndex

Inherited from ​

CommonTree.getTokenStartIndex


getTokenStopIndex() ​

ts
getTokenStopIndex(): number;

Returns ​

number

Implementation of ​

ts
IGrammarAST.getTokenStopIndex

Inherited from ​

CommonTree.getTokenStopIndex


getType() ​

ts
getType(): number;

Returns ​

number

Implementation of ​

ts
IGrammarAST.getType

Inherited from ​

CommonTree.getType


insertChild() ​

ts
insertChild(i, t): void;

Inserts child t at child position i (0..n - 1) by shifting children i + 1..n - 1 to the right one position. Sets parent/indexes properly but does NOT collapse nil-rooted t's that come in here like addChild.

Parameters ​

i ​

number

The index to insert the child at.

t ​

CommonTree

The child to insert.

Returns ​

void

Implementation of ​

ts
IGrammarAST.insertChild

Inherited from ​

CommonTree.insertChild


isNil() ​

ts
isNil(): boolean;

Returns ​

boolean

Implementation of ​

ts
IGrammarAST.isNil

Inherited from ​

CommonTree.isNil


replaceChildren() ​

ts
replaceChildren(
   startChildIndex, 
   stopChildIndex, 
   t): void;

Deletes children from start to stop and replaces with t even if t is a list (nil-root tree). Number of children can increase or decrease. For huge child lists, inserting children can force walking rest of children to set their child index - could be slow.

Parameters ​

startChildIndex ​

number

The index to start deleting children.

stopChildIndex ​

number

The index to stop deleting children.

t ​

CommonTree

The tree to replace the deleted children with.

Returns ​

void

Implementation of ​

ts
IGrammarAST.replaceChildren

Inherited from ​

CommonTree.replaceChildren


sanityCheckParentAndChildIndexes() ​

Call Signature ​

ts
sanityCheckParentAndChildIndexes(): void;
Returns ​

void

Implementation of ​
ts
IGrammarAST.sanityCheckParentAndChildIndexes
Inherited from ​

CommonTree.sanityCheckParentAndChildIndexes

Call Signature ​

ts
sanityCheckParentAndChildIndexes(parent, i): void;
Parameters ​
parent ​

undefined | CommonTree

i ​

number

Returns ​

void

Implementation of ​
ts
IGrammarAST.sanityCheckParentAndChildIndexes
Inherited from ​

CommonTree.sanityCheckParentAndChildIndexes


setChild() ​

ts
setChild(i, t): void;

Parameters ​

i ​

number

t ​

CommonTree

Returns ​

void

Implementation of ​

ts
IGrammarAST.setChild

Inherited from ​

CommonTree.setChild


setText() ​

ts
setText(text): void;

Parameters ​

text ​

string

Returns ​

void

Implementation of ​

ts
IGrammarAST.setText

setTokenStartIndex() ​

ts
setTokenStartIndex(index): void;

Parameters ​

index ​

number

Returns ​

void

Implementation of ​

ts
IGrammarAST.setTokenStartIndex

Inherited from ​

CommonTree.setTokenStartIndex


setTokenStopIndex() ​

ts
setTokenStopIndex(index): void;

Parameters ​

index ​

number

Returns ​

void

Implementation of ​

ts
IGrammarAST.setTokenStopIndex

Inherited from ​

CommonTree.setTokenStopIndex


setType() ​

ts
setType(type): void;

Parameters ​

type ​

number

Returns ​

void

Implementation of ​

ts
IGrammarAST.setType

setUnknownTokenBoundaries() ​

ts
setUnknownTokenBoundaries(): void;

For every node in this subtree, make sure it's start/stop token's are set. Walks depth first, visits bottom up. Only updates nodes with at least one token index < 0.

Returns ​

void

Implementation of ​

ts
IGrammarAST.setUnknownTokenBoundaries

Inherited from ​

CommonTree.setUnknownTokenBoundaries


toString() ​

ts
toString(): string;

Returns ​

string

Implementation of ​

ts
IGrammarAST.toString

Inherited from ​

CommonTree.toString


toStringTree() ​

ts
toStringTree(): string;

Prints out a whole tree not just a node.

Returns ​

string

A string representation of the tree.

Implementation of ​

ts
IGrammarAST.toStringTree

Inherited from ​

CommonTree.toStringTree


visit() ​

ts
visit<T>(v): T;

Type Parameters ​

T ​

T

Parameters ​

v ​

IGrammarASTVisitor<T>

Returns ​

T

Implementation of ​

ts
IGrammarAST.visit