Package org.zkoss.zkmax.xel.util

## Class ExpressionFragment

- java.lang.Object
- - org.zkoss.zkmax.xel.util.ExpressionFragment

- All Implemented Interfaces:
    `java.io.Serializable`

      public class ExpressionFragment
      extends java.lang.Object
      implements java.io.Serializable

  Represents an expression fragment of an expression. When `parse(java.lang.String)` is called, a list of fragments is returned. Each of them is either a Spring instance or a `ExpressionFragment` instance.

  Available in ZK EE

  For example, "ab${x + y}cd${z}" is broken into the following segments, when `parse(java.lang.String)` is called:
  String("ab"), ExpressionFragment("x+y"), String("cd") and ExpressionFragment("z").

  It is used to implement `ExpressionFactory` based on an evaluator that doesn't support the syntax of ${expr}. The users of XEL expressions rarely needs to use this class.

  Since:
    3.0.0
  Author:
    tomyeh
  See Also:
    Serialized Form

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object o)` |
    `java.lang.String` | `getExpression()` | Returns the expression.
    `int` | `hashCode()` |
    `static java.util.List<java.lang.Object>` | `parse​(java.lang.String expr)` | Parses an expression into a list of fragments.
    `java.lang.String` | `toString()` |

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### parse

          public static final java.util.List<java.lang.Object> parse​(java.lang.String expr)

      Parses an expression into a list of fragments. Each of them is either a Spring instance or a `ExpressionFragment` instance.

      For example, "ab${x + y}cd${z}" is broken into the following segments, when `parse(java.lang.String)` is called:
      String("ab"), ExpressionFragment("x+y"), String("cd") and ExpressionFragment("z").

      Parameters:
        `expr` - the expression that may or may not contain one or multiple ${expr}. It cannot be null.

    - #### getExpression

          public java.lang.String getExpression()

      Returns the expression.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### equals

          public boolean equals​(java.lang.Object o)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`