Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.jexl3.parser
Class JexlNode

    java.lang.Object
      org.apache.commons.jexl3.parser.SimpleNode
          org.apache.commons.jexl3.parser.JexlNode

All Implemented Interfaces:
  Node

Direct Known Subclasses:
  ASTAddNode, ASTAmbiguous, ASTAndNode, ASTAnnotatedStatement, ASTAnnotation, ASTArguments, ASTArrayAccess, ASTArrayLiteral, ASTAssignment, ASTBitwiseAndNode, ASTBitwiseComplNode, ASTBitwiseOrNode, ASTBitwiseXorNode, ASTBlock, ASTBreak, ASTConstructorNode, ASTContinue, ASTDivNode, ASTEmptyFunction, ASTEmptyMethod, ASTEQNode, ASTERNode, ASTEWNode, ASTExtendedLiteral, ASTFalseNode, ASTForeachStatement, ASTFunctionNode, ASTGENode, ASTGTNode, ASTIdentifier, ASTIdentifierAccess, ASTIfStatement, ASTJexlScript, ASTJxltLiteral, ASTLENode, ASTLTNode, ASTMapEntry, ASTMapLiteral, ASTMethodNode, ASTModNode, ASTMulNode, ASTNENode, ASTNEWNode, ASTNotNode, ASTNRNode, ASTNSWNode, ASTNullLiteral, ASTNumberLiteral, ASTOrNode, ASTRangeNode, ASTReference, ASTReferenceExpression, ASTReturnStatement, ASTSetAddNode, ASTSetAndNode, ASTSetDivNode, ASTSetLiteral, ASTSetModNode, ASTSetMultNode, ASTSetOrNode, ASTSetSubNode, ASTSetXorNode, ASTSizeFunction, ASTSizeMethod, ASTStringLiteral, ASTSubNode, ASTSWNode, ASTTernaryNode, ASTTrueNode, ASTUnaryMinusNode, ASTWhileStatement

    public abstract class JexlNode

extends SimpleNode

Base class for parser nodes - holds an 'image' of the token for later use.

Since:
  2.0

Nested Class Summary
`static interface` | `JexlNode.Constant<T>` A marker interface for constants.

Field Summary

Fields inherited from class org.apache.commons.jexl3.parser.SimpleNode
`id`

Constructor Summary
`JexlNode(int id)`
`JexlNode(Parser p, int id)`

Method Summary
`void` | `clearCache()` Clears any cached value of type JexlProperty{G,S}et or JexlMethod.
`boolean` | `isConstant()` Whether this node is a constant node Its value can not change after the first evaluation and can be cached indefinitely.
`protected boolean` | `isConstant(boolean literal)`
`boolean` | `isLeftValue()` Whether this node is a left value.
`JexlInfo` | `jexlInfo()` Gets the associated JexlInfo instance.
`void` | `jjtSetFirstToken(Token t)`
`void` | `jjtSetLastToken(Token t)`

Methods inherited from class org.apache.commons.jexl3.parser.SimpleNode
`childrenAccept, dump, jjtAccept, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtGetValue, jjtOpen, jjtSetParent, jjtSetValue, toString, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### JexlNode

    public JexlNode(int id)

### JexlNode

    public JexlNode(Parser p,
                    int id)

Method Detail

### jjtSetFirstToken

    public void jjtSetFirstToken(Token t)

### jjtSetLastToken

    public void jjtSetLastToken(Token t)

### jexlInfo

    public JexlInfo jexlInfo()

  Gets the associated JexlInfo instance.

  Returns:
    the info

### clearCache

    public void clearCache()

  Clears any cached value of type JexlProperty{G,S}et or JexlMethod.

  This is called when the engine detects the evaluation of a script occurs with a class loader different that the one that created it.

### isConstant

    public boolean isConstant()

  Whether this node is a constant node Its value can not change after the first evaluation and can be cached indefinitely.

  Returns:
    true if constant, false otherwise

### isConstant

    protected boolean isConstant(boolean literal)

### isLeftValue

    public boolean isLeftValue()

  Whether this node is a left value.

  Returns:
    true if node is assignable, false otherwise

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001–2017 The Apache Software Foundation. All rights reserved.