# Class ELNode

java.lang.Object
org.apache.jasper.compiler.ELNode

Direct Known Subclasses:
  `ELNode.ELText, ELNode.Function, ELNode.Root, ELNode.Text`

public abstract class ELNode extends Object
This class defines internal representation for an EL Expression. It currently only defines functions. It can be expanded to define all the components of an EL expression, if need to.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `ELNode.ELText`
  Represents anything in EL expression, other than functions, including function arguments etc.
  `static class`
  `ELNode.Function`
  Represents a function.
  `static class`
  `ELNode.Nodes`
  An ordered list of ELNode.
  `static class`
  `ELNode.Root`
  Represents an EL expression: anything in ${ and }.
  `static class`
  `ELNode.Text`
  Represents text outside of EL expression.
  `static class`
  `ELNode.Visitor`
  A visitor class for traversing ELNodes.

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `ELNode()`
  Creates a new ELNode instance.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract void`
  `accept(ELNode.Visitor v)`
  Accepts a visitor for traversing this node.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ELNode

    protected ELNode()
    Creates a new ELNode instance.

- ## Method Details

  - ### accept

    public abstract void accept(ELNode.Visitor v) throws JasperException
    Accepts a visitor for traversing this node.
    Parameters:
      `v` - the visitor
    Throws:
      `JasperException` - if an error occurs during visitation