org.apache.el.parser

## Interface Node

All Known Implementing Classes:
  ArithmeticNode, AstAnd, AstBracketSuffix, AstChoice, AstCompositeExpression, AstDeferredExpression, AstDiv, AstDotSuffix, AstDynamicExpression, AstEmpty, AstEqual, AstFalse, AstFloatingPoint, AstFunction, AstGreaterThan, AstGreaterThanEqual, AstIdentifier, AstInteger, AstLessThan, AstLessThanEqual, AstLiteralExpression, AstMethodParameters, AstMinus, AstMod, AstMult, AstNegative, AstNot, AstNotEqual, AstNull, AstOr, AstPlus, AstString, AstTrue, AstValue, BooleanNode, SimpleNode

    public interface Node

Author:
  Jacob Hookom [jacob@hookom.net]

### Method Summary

Methods
`void` `accept(NodeVisitor visitor)`
`String` `getImage()`
`MethodInfo` `getMethodInfo(EvaluationContext ctx, Class<?>[] paramTypes)`
`Class<?>` `getType(EvaluationContext ctx)`
`Object` `getValue(EvaluationContext ctx)`
`ValueReference` `getValueReference(EvaluationContext ctx)`
`Object` `invoke(EvaluationContext ctx, Class<?>[] paramTypes, Object[] paramValues)`
`boolean` `isParametersProvided()`
`boolean` `isReadOnly(EvaluationContext ctx)`
`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.
`Node` `jjtGetChild(int i)` This method returns a child node.
`int` `jjtGetNumChildren()` Return the number of children the node has.
`Node` `jjtGetParent()`
`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` `setValue(EvaluationContext ctx, Object value)`

### Method Detail

#### jjtOpen

    void jjtOpen()

This method is called after the node has been made the current node. It indicates that child nodes can now be added to it.

#### jjtClose

    void jjtClose()

This method is called after all the child nodes have been added.

#### jjtSetParent

    void jjtSetParent(Node n)

This pair of methods are used to inform the node of its parent.

#### jjtGetParent

    Node jjtGetParent()

#### jjtAddChild

    void jjtAddChild(Node n,
                   int i)

This method tells the node to add its argument to the node's list of children.

#### jjtGetChild

    Node jjtGetChild(int i)

This method returns a child node. The children are numbered from zero, left to right.

#### jjtGetNumChildren

    int jjtGetNumChildren()

Return the number of children the node has.

#### getImage

    String getImage()

#### getValue

    Object getValue(EvaluationContext ctx)
                    throws ELException

Throws:
  `ELException`

#### setValue

    void setValue(EvaluationContext ctx,
                Object value)
                  throws ELException

Throws:
  `ELException`

#### getType

    Class<?> getType(EvaluationContext ctx)
                     throws ELException

Throws:
  `ELException`

#### isReadOnly

    boolean isReadOnly(EvaluationContext ctx)
                       throws ELException

Throws:
  `ELException`

#### accept

    void accept(NodeVisitor visitor)
                throws Exception

Throws:
  `Exception`

#### getMethodInfo

    MethodInfo getMethodInfo(EvaluationContext ctx,
                           Class<?>[] paramTypes)
                             throws ELException

Throws:
  `ELException`

#### invoke

    Object invoke(EvaluationContext ctx,
                Class<?>[] paramTypes,
                Object[] paramValues)
                  throws ELException

Throws:
  `ELException`

#### getValueReference

    ValueReference getValueReference(EvaluationContext ctx)

Since:
  EL 2.2

#### isParametersProvided

    boolean isParametersProvided()

Since:
  EL 2.2