Package org.zkoss.xel

## Interface ExpressionX

- All Superinterfaces:
    `Expression`
  All Known Implementing Classes:
    `BindXelExpression`, `BindXelExpressionEx`, `ELXelExpression`, `PropertyExpression`

      public interface ExpressionX
      extends Expression

  An extension of `Expression` to have more control to handle Expression Language EL 2.2 specs.

  With `ExpressionX`, you are allow to set value into property resolved by this expression.

  Notice it is available only ZEL 2.2 is used. Please refer to `Expressions.newExpressionFactory()` for more information.

  Since:
    6.0.0
  Author:
    henri

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getExpressionString()` | Returns the expression in String form.
    `java.lang.Class` | `getType​(XelContext xelc)` | Returns the result type of this expression.
    `ValueReference` | `getValueReference​(XelContext xelc)` | Returns the target bean and field name of this expression.
    `boolean` | `isReadOnly​(XelContext ctx)` | Returns whether this is a read only (cannot setValue) expression.
    `void` | `setValue​(XelContext ctx, java.lang.Object value)` | Set values into the property resolved by this expression.

    - ### Methods inherited from interface org.zkoss.xel.Expression

      `evaluate`

- - ### Method Detail

    - #### isReadOnly

          boolean isReadOnly​(XelContext ctx)
                      throws XelException

      Returns whether this is a read only (cannot setValue) expression.
      Parameters:
        `ctx` - the evaluation context
      Returns:
        whether this is a read only (cannot setValue) expression.
      Throws:
        `XelException`

    - #### setValue

          void setValue​(XelContext ctx,
                        java.lang.Object value)
                 throws XelException

      Set values into the property resolved by this expression.
      Parameters:
        `ctx` - the evaluation context
        `value` - the value to be set into the property resolved by this expression
      Throws:
        `XelException`

    - #### getExpressionString

          java.lang.String getExpressionString()

      Returns the expression in String form.
      Returns:
        the expression in String form.

    - #### getType

          java.lang.Class getType​(XelContext xelc)

      Returns the result type of this expression.
      Parameters:
        `xelc` - the evaluation context
      Returns:
        the result type of this expression.

    - #### getValueReference

          ValueReference getValueReference​(XelContext xelc)

      Returns the target bean and field name of this expression.
      Parameters:
        `xelc` - the evaluation context
      Returns:
        the target bean and field name of this expression.