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
| Modifier and Type | Field and Description |
|---|---|
(package private) Expression |
mIndex |
(package private) static java.lang.Object[] |
sNoArgs |
| Constructor and Description |
|---|
ArraySuffix(Expression pIndex)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
evaluate(java.lang.Object pValue,
javax.servlet.jsp.el.VariableResolver pResolver,
javax.servlet.jsp.el.FunctionMapper functions,
Logger pLogger)
Evaluates the expression in the given context, operating on the
given value.
|
(package private) java.lang.Object |
evaluateIndex(javax.servlet.jsp.el.VariableResolver pResolver,
javax.servlet.jsp.el.FunctionMapper functions,
Logger pLogger)
Gets the value of the index
|
java.lang.String |
getExpressionString()
Returns the expression in the expression language syntax
|
Expression |
getIndex() |
(package private) java.lang.String |
getOperatorSymbol()
Returns the operator symbol
|
void |
setIndex(Expression pIndex) |
static java.lang.Object[] sNoArgs
Expression mIndex
public ArraySuffix(Expression pIndex)
public Expression getIndex()
public void setIndex(Expression pIndex)
java.lang.Object evaluateIndex(javax.servlet.jsp.el.VariableResolver pResolver,
javax.servlet.jsp.el.FunctionMapper functions,
Logger pLogger)
throws javax.servlet.jsp.el.ELException
javax.servlet.jsp.el.ELExceptionjava.lang.String getOperatorSymbol()
public java.lang.String getExpressionString()
getExpressionString in class ValueSuffixpublic java.lang.Object evaluate(java.lang.Object pValue,
javax.servlet.jsp.el.VariableResolver pResolver,
javax.servlet.jsp.el.FunctionMapper functions,
Logger pLogger)
throws javax.servlet.jsp.el.ELException
evaluate in class ValueSuffixjavax.servlet.jsp.el.ELExceptionCopyright (c) 2001-2002 - Apache Software Foundation