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.jexl2.parser
Class SimpleNode

    java.lang.Object
      org.apache.commons.jexl2.parser.SimpleNode

All Implemented Interfaces:
  Node

Direct Known Subclasses:
  JexlNode

    public class SimpleNode

extends Object
implements Node

A class originally generated by JJTree: /* JavaCCOptions:MULTI=true,NODE_USES_PARSER=true,VISITOR=true,TRACK_TOKENS=false,NODE_PREFIX=AST,NODE_EXTENDS=,NODE_FACTORY= *\/ Worksaround issue https://javacc.dev.java.net/issues/show_bug.cgi?id=227 As soon as this issue if fixed and the maven plugin uses the correct version of Javacc, this class can go away. The technical goal is to ensure every reference made in the parser was to a JexlNode; unfortunately, as in javacc 4.1, it still uses a SimpleNode reference in the generated ParserVisitor. Besides, there is no need to keep the parser around in the node. The functional goal is to a allow a volatile value in the node so it can serve as a last evaluation cache even in multi-threaded executions.

Field Summary
`protected JexlNode[]` | `children`
`protected int` | `id`
`protected JexlNode` | `parent`
`protected Object` | `value` volatile value so it can be used as a last evaluation cache.

Constructor Summary
`SimpleNode(int i)`
`SimpleNode(Parser p, int i)`

Method Summary
`Object` | `childrenAccept(ParserVisitor visitor, Object data)` Accept the visitor.
`void` | `dump(String prefix)`
`Object` | `jjtAccept(ParserVisitor visitor, Object data)` Accept the visitor.
`void` | `jjtAddChild(Node n, int i)` This method tells the node to add its argument to the node's list of children.
`void` | `jjtClose()` This method is called after all the child nodes have been added.
`JexlNode` | `jjtGetChild(int i)` This method returns a child node.
`int` | `jjtGetNumChildren()` Return the number of children the node has.
`JexlNode` | `jjtGetParent()`
`Object` | `jjtGetValue()`
`void` | `jjtOpen()` This method is called after the node has been made the current node.
`void` | `jjtSetParent(Node n)` This pair of methods are used to inform the node of its parent.
`void` | `jjtSetValue(Object value)`
`String` | `toString()`
`String` | `toString(String prefix)`

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

Field Detail

### parent

    protected JexlNode parent

### children

    protected JexlNode[] children

### id

    protected int id

### value

    protected volatile Object value

  volatile value so it can be used as a last evaluation cache.

Constructor Detail

### SimpleNode

    public SimpleNode(int i)

### SimpleNode

    public SimpleNode(Parser p,
                      int i)

Method Detail

### jjtOpen

    public void jjtOpen()

  Description copied from interface: `Node`
  This method is called after the node has been made the current node. It indicates that child nodes can now be added to it.

  Specified by:
    `jjtOpen` in interface `Node`

### jjtClose

    public void jjtClose()

  Description copied from interface: `Node`
  This method is called after all the child nodes have been added.

  Specified by:
    `jjtClose` in interface `Node`

### jjtSetParent

    public void jjtSetParent(Node n)

  Description copied from interface: `Node`
  This pair of methods are used to inform the node of its parent.

  Specified by:
    `jjtSetParent` in interface `Node`

### jjtGetParent

    public JexlNode jjtGetParent()

  Specified by:
    `jjtGetParent` in interface `Node`

### jjtAddChild

    public void jjtAddChild(Node n,
                            int i)

  Description copied from interface: `Node`
  This method tells the node to add its argument to the node's list of children.

  Specified by:
    `jjtAddChild` in interface `Node`

### jjtGetChild

    public JexlNode jjtGetChild(int i)

  Description copied from interface: `Node`
  This method returns a child node. The children are numbered from zero, left to right.

  Specified by:
    `jjtGetChild` in interface `Node`

### jjtGetNumChildren

    public int jjtGetNumChildren()

  Description copied from interface: `Node`
  Return the number of children the node has.

  Specified by:
    `jjtGetNumChildren` in interface `Node`

### jjtSetValue

    public void jjtSetValue(Object value)

### jjtGetValue

    public Object jjtGetValue()

### jjtAccept

    public Object jjtAccept(ParserVisitor visitor,
                            Object data)

  Accept the visitor.

  Specified by:
    `jjtAccept` in interface `Node`

### childrenAccept

    public Object childrenAccept(ParserVisitor visitor,
                                 Object data)

  Accept the visitor.

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### toString

    public String toString(String prefix)

### dump

    public void dump(String prefix)

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-2010 The Apache Software Foundation. All Rights Reserved.