com.puppycrawl.tools.checkstyle.api
Class DetailAST

java.lang.Object
  extended byantlr.BaseAST
      extended byantlr.CommonAST
          extended bycom.puppycrawl.tools.checkstyle.api.DetailAST
All Implemented Interfaces:
antlr.collections.AST, java.io.Serializable

public final class DetailAST
extends antlr.CommonAST

An extension of the CommonAST that records the line and column number. The idea was taken from Java Guru FAQ: How can I include line numbers in automatically generated ASTs?.

Version:
1.0
Author:
Oliver Burn, lkuehne
See Also:
ANTLR Website, Serialized Form

Field Summary
 
Fields inherited from class antlr.BaseAST
down, right
 
Constructor Summary
DetailAST()
           
 
Method Summary
 void addChild(antlr.collections.AST aAST)
          Adds new child to AST.
 boolean branchContains(int aType)
          Checks if this branch of the parse tree contains a token of the provided type.
 DetailAST findFirstToken(int aType)
          Returns the first child token that makes a specified type.
 int getChildCount()
          Returns the number of child nodes one level below this node.
 int getChildCount(int aType)
          Returns the number of direct child tokens that have the specified type.
 int getColumnNo()
           
 DetailAST getLastChild()
           
 int getLineNo()
           
 DetailAST getParent()
          Returns the parent token.
 DetailAST getPreviousSibling()
          Returns the previous sibling or null if no such sibling exists.
 void initialize(antlr.collections.AST aAST)
           
 void initialize(antlr.Token aTok)
           
 void setFirstChild(antlr.collections.AST aAST)
          Sets this AST's first Child.
 void setNextSibling(antlr.collections.AST aAST)
          Sets AST's next sibling.
 
Methods inherited from class antlr.CommonAST
getText, getType, initialize, setText, setType
 
Methods inherited from class antlr.BaseAST
decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getFirstChild, getNextSibling, getNumberOfChildren, removeChildren, setVerboseStringConversion, toString, toStringList, toStringTree, xmlSerialize, xmlSerializeNode, xmlSerializeRootClose, xmlSerializeRootOpen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DetailAST

public DetailAST()
Method Detail

initialize

public void initialize(antlr.Token aTok)
See Also:
CommonAST

initialize

public void initialize(antlr.collections.AST aAST)
See Also:
CommonAST

setFirstChild

public void setFirstChild(antlr.collections.AST aAST)
Sets this AST's first Child.

Parameters:
aAST - the new first child

setNextSibling

public void setNextSibling(antlr.collections.AST aAST)
Sets AST's next sibling.

Parameters:
aAST - the new next sibling

addChild

public void addChild(antlr.collections.AST aAST)
Adds new child to AST.

Parameters:
aAST - the new child

getChildCount

public int getChildCount()
Returns the number of child nodes one level below this node. That is is does not recurse down the tree.

Returns:
the number of child nodes

getParent

public DetailAST getParent()
Returns the parent token.

Returns:
the parent token

getLineNo

public int getLineNo()
Returns:
the line number

getColumnNo

public int getColumnNo()
Returns:
the column number

getLastChild

public DetailAST getLastChild()
Returns:
the last child node

branchContains

public boolean branchContains(int aType)
Checks if this branch of the parse tree contains a token of the provided type.

Parameters:
aType - a TokenType
Returns:
true if and only if this branch (including this node) contains a token of type aType.

getChildCount

public int getChildCount(int aType)
Returns the number of direct child tokens that have the specified type.

Parameters:
aType - the token type to match
Returns:
the number of matching token

getPreviousSibling

public DetailAST getPreviousSibling()
Returns the previous sibling or null if no such sibling exists.

Returns:
the previous sibling or null if no such sibling exists.

findFirstToken

public DetailAST findFirstToken(int aType)
Returns the first child token that makes a specified type.

Parameters:
aType - the token type to match
Returns:
the matching token, or null if no match

Back to the Checkstyle Home Page