Package org.codehaus.groovy.syntax
Class Reduction
java.lang.Object
org.codehaus.groovy.syntax.CSTNode
org.codehaus.groovy.syntax.Reduction
A syntax reduction, produced by the
Parser
.-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionAdds an element to the node.Creates aReduction
from this node.get
(int index) Returns the specified element, or null.getRoot()
Returns the root of the node, the Token that indicates its type.boolean
Returns true if the node is a complete expression.boolean
isEmpty()
Returns true if the node is completely empty (no root, even).void
Marks the node a complete expression.static Reduction
Creates a newReduction
withToken.NULL
as its root.remove
(int index) Removes a node from theReduction
.Sets an element in at the specified index.int
size()
Returns the number of elements in the node.Methods inherited from class org.codehaus.groovy.syntax.CSTNode
addChildrenOf, canMean, children, get, getDescription, getMeaning, getMeaningAs, getRoot, getRootText, getStartColumn, getStartLine, getType, hasChildren, isA, isAllOf, isOneOf, setMeaning, toString, write, write
-
Field Details
-
EMPTY
-
-
Constructor Details
-
Reduction
Initializes theReduction
with the specified root.
-
-
Method Details
-
newContainer
Creates a newReduction
withToken.NULL
as its root. -
isEmpty
public boolean isEmpty()Returns true if the node is completely empty (no root, even). -
size
public int size()Returns the number of elements in the node. -
get
Returns the specified element, or null. -
getRoot
Returns the root of the node, the Token that indicates its type. Returns null if there is no root (usually only if the node is a placeholder of some kind -- see isEmpty()). -
markAsExpression
public void markAsExpression()Marks the node a complete expression.- Overrides:
markAsExpression
in classCSTNode
-
isAnExpression
public boolean isAnExpression()Returns true if the node is a complete expression.- Overrides:
isAnExpression
in classCSTNode
-
add
Adds an element to the node. -
set
Sets an element in at the specified index. -
remove
Removes a node from theReduction
. You cannot remove the root node (index 0). -
asReduction
Creates aReduction
from this node. Returns self if the node is already aReduction
.- Specified by:
asReduction
in classCSTNode
-