## org.apache.taglibs.standard.lang.jstl
Class ArraySuffix

    java.lang.Object
      org.apache.taglibs.standard.lang.jstl.ValueSuffix
          org.apache.taglibs.standard.lang.jstl.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: tcfujii $
Author:
  Nathan Abramson - Art Technology Group, Shawn Bayern

Constructor Summary
`ArraySuffix(Expression pIndex)` Constructor

Method Summary
`Object` `evaluate(Object pValue, Object pContext, VariableResolver pResolver, Map functions, String defaultPrefix, Logger pLogger)` Evaluates the expression in the given context, operating on the given value.
`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 String getExpressionString()

  Returns the expression in the expression language syntax

  Specified by:
    `getExpressionString` in class `ValueSuffix`

### evaluate

    public Object evaluate(Object pValue,
                           Object pContext,
                           VariableResolver pResolver,
                           Map functions,
                           String defaultPrefix,
                           Logger pLogger)
                    throws ELException

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

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

Copyright © 2007 Mort Bay Consulting. All Rights Reserved.