Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jbpm.jpdl.el.impl
Class ArraySuffix

    java.lang.Object
      org.jbpm.jpdl.el.impl.ValueSuffix
          org.jbpm.jpdl.el.impl.ArraySuffix

Direct Known Subclasses:
  PropertySuffix

    public class ArraySuffix

extends ValueSuffix

Represents an operator that obtains a Map entry, an indexed value, a property value, or an indexed property value of an object. The following are the rules for evaluating this operator:

      Evaluating a[b] (assuming a.b == a["b"])
        a is null
          return null
        b is null
          return null
        a is Map
          !a.containsKey (b)
            return null
          a.get(b) == null
            return null
          otherwise
            return a.get(b)
        a is List or array
          coerce b to int (using coercion rules)
          coercion couldn't be performed
            error
          a.get(b) or Array.get(a, b) throws ArrayIndexOutOfBoundsException or IndexOutOfBoundsException
            return null
          a.get(b) or Array.get(a, b) throws other exception
            error
          return a.get(b) or Array.get(a, b)

        coerce b to String
        b is a readable property of a
          getter throws an exception
            error
          otherwise
            return result of getter call

        otherwise
          error

Version:
  $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author$
Author:
  Nathan Abramson - Art Technology Group, Shawn Bayern

Constructor Summary
`ArraySuffix(Expression pIndex)` Constructor

Method Summary
`java.lang.Object` | `evaluate(java.lang.Object pValue, VariableResolver pResolver, FunctionMapper functions, Logger pLogger)` Evaluates the expression in the given context, operating on the given value.
`java.lang.String` | `getExpressionString()` Returns the expression in the expression language syntax
`Expression` | `getIndex()`
`void` | `setIndex(Expression pIndex)`

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

Constructor Detail

### ArraySuffix

    public ArraySuffix(Expression pIndex)

  Constructor

Method Detail

### getIndex

    public Expression getIndex()

### setIndex

    public void setIndex(Expression pIndex)

### getExpressionString

    public java.lang.String getExpressionString()

  Returns the expression in the expression language syntax

  Specified by:
    `getExpressionString` in class `ValueSuffix`

### evaluate

    public java.lang.Object evaluate(java.lang.Object pValue,
                                     VariableResolver pResolver,
                                     FunctionMapper functions,
                                     Logger pLogger)
                              throws ELException

  Evaluates the expression in the given context, operating on the given value.

  Specified by:
    `evaluate` in class `ValueSuffix`
  Throws:
    `ELException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD