# Uses of Interface
org.springframework.expression.EvaluationContext

Packages that use EvaluationContext
Package
Description
org.springframework.expression
Core abstractions behind the Spring Expression Language.
org.springframework.expression.common
Common utility classes behind the Spring Expression Language.
org.springframework.expression.spel
SpEL's central implementation package.
org.springframework.expression.spel.ast
SpEL's abstract syntax tree.
org.springframework.expression.spel.standard
SpEL's standard parser implementation.
org.springframework.expression.spel.support
SpEL's default implementations for various core abstractions.

## Uses of EvaluationContext in org.springframework.expression

Methods in org.springframework.expression with parameters of type EvaluationContext
Modifier and Type
Method
Description
`boolean`
IndexAccessor.`canRead(EvaluationContext context, Object target, Object index)`
Determine if this index accessor is able to read a specified index on a specified target object.
`boolean`
PropertyAccessor.`canRead(EvaluationContext context, Object target, String name)`
Called to determine if this property accessor is able to read a specified property on a specified target object.
`boolean`
IndexAccessor.`canWrite(EvaluationContext context, Object target, Object index)`
Determine if this index accessor is able to write to a specified index on a specified target object.
`boolean`
PropertyAccessor.`canWrite(EvaluationContext context, Object target, String name)`
Called to determine if this property accessor is able to write to a specified property on a specified target object.
`TypedValue`
ConstructorExecutor.`execute(EvaluationContext context, Object... arguments)`
Execute a constructor in the specified context using the specified arguments.
`TypedValue`
MethodExecutor.`execute(EvaluationContext context, Object target, Object... arguments)`
Execute a method in the specified context using the specified arguments.
`Object`
Expression.`getValue(EvaluationContext context)`
Evaluate this expression in the provided context and return the result of evaluation.
`<T> T`
Expression.`getValue(EvaluationContext context, Class<T> desiredResultType)`
Evaluate this expression in the provided context and return the result of evaluation.
`Object`
Expression.`getValue(EvaluationContext context, Object rootObject)`
Evaluate this expression in the provided context against the specified root object and return the result of evaluation.
`<T> T`
Expression.`getValue(EvaluationContext context, Object rootObject, Class<T> desiredResultType)`
Evaluate this expression in the provided context against the specified root object and return the result of evaluation.
`Class<?>`
Expression.`getValueType(EvaluationContext context)`
Return the most general type that can be passed to the `Expression.setValue(EvaluationContext, Object)` method for the given context.
`Class<?>`
Expression.`getValueType(EvaluationContext context, Object rootObject)`
Return the most general type that can be passed to the `Expression.setValue(EvaluationContext, Object, Object)` method for the given context.
`org.springframework.core.convert.TypeDescriptor`
Expression.`getValueTypeDescriptor(EvaluationContext context)`
Return a descriptor for the most general type that can be passed to the `Expression.setValue(EvaluationContext, Object)` method for the given context.
`org.springframework.core.convert.TypeDescriptor`
Expression.`getValueTypeDescriptor(EvaluationContext context, Object rootObject)`
Return a descriptor for the most general type that can be passed to the `Expression.setValue(EvaluationContext, Object, Object)` method for the given context.
`boolean`
Expression.`isWritable(EvaluationContext context)`
Determine if this expression can be written to, i.e.
`boolean`
Expression.`isWritable(EvaluationContext context, Object rootObject)`
Determine if this expression can be written to, i.e.
`TypedValue`
IndexAccessor.`read(EvaluationContext context, Object target, Object index)`
Read an index from a specified target object.
`TypedValue`
PropertyAccessor.`read(EvaluationContext context, Object target, String name)`
Called to read a property from a specified target object.
`Object`
BeanResolver.`resolve(EvaluationContext context, String beanName)`
Look up a bean by the given name and return a corresponding instance for it.
`ConstructorExecutor`
ConstructorResolver.`resolve(EvaluationContext context, String typeName, List<org.springframework.core.convert.TypeDescriptor> argumentTypes)`
Within the supplied context, resolve a suitable constructor on the supplied type that can handle the specified arguments.
`MethodExecutor`
MethodResolver.`resolve(EvaluationContext context, Object targetObject, String name, List<org.springframework.core.convert.TypeDescriptor> argumentTypes)`
Within the supplied context, resolve a suitable method on the supplied object that can handle the specified arguments.
`void`
Expression.`setValue(EvaluationContext context, Object value)`
Set this expression in the provided context to the value provided.
`void`
Expression.`setValue(EvaluationContext context, Object rootObject, Object value)`
Set this expression in the provided context to the value provided.
`void`
IndexAccessor.`write(EvaluationContext context, Object target, Object index, Object newValue)`
Write to an index on a specified target object.
`void`
PropertyAccessor.`write(EvaluationContext context, Object target, String name, Object newValue)`
Called to write to a property on a specified target object.

## Uses of EvaluationContext in org.springframework.expression.common

Methods in org.springframework.expression.common with parameters of type EvaluationContext
Modifier and Type
Method
Description
`static <T> T`
ExpressionUtils.`convertTypedValue(EvaluationContext context, TypedValue typedValue, Class<T> targetType)`
Determines if there is a type converter available in the specified context and attempts to use it to convert the supplied value to the specified type.
`String`
CompositeStringExpression.`getValue(EvaluationContext context)`
`<T> T`
CompositeStringExpression.`getValue(EvaluationContext context, Class<T> expectedResultType)`
`String`
CompositeStringExpression.`getValue(EvaluationContext context, Object rootObject)`
`<T> T`
CompositeStringExpression.`getValue(EvaluationContext context, Object rootObject, Class<T> desiredResultType)`
`String`
LiteralExpression.`getValue(EvaluationContext context)`
`<T> T`
LiteralExpression.`getValue(EvaluationContext context, Class<T> expectedResultType)`
`String`
LiteralExpression.`getValue(EvaluationContext context, Object rootObject)`
`<T> T`
LiteralExpression.`getValue(EvaluationContext context, Object rootObject, Class<T> desiredResultType)`
`Class<?>`
CompositeStringExpression.`getValueType(EvaluationContext context)`
`Class<?>`
CompositeStringExpression.`getValueType(EvaluationContext context, Object rootObject)`
`Class<?>`
LiteralExpression.`getValueType(EvaluationContext context)`
`Class<?>`
LiteralExpression.`getValueType(EvaluationContext context, Object rootObject)`
`org.springframework.core.convert.TypeDescriptor`
CompositeStringExpression.`getValueTypeDescriptor(EvaluationContext context)`
`org.springframework.core.convert.TypeDescriptor`
CompositeStringExpression.`getValueTypeDescriptor(EvaluationContext context, Object rootObject)`
`org.springframework.core.convert.TypeDescriptor`
LiteralExpression.`getValueTypeDescriptor(EvaluationContext context)`
`org.springframework.core.convert.TypeDescriptor`
LiteralExpression.`getValueTypeDescriptor(EvaluationContext context, Object rootObject)`
`boolean`
CompositeStringExpression.`isWritable(EvaluationContext context)`
`boolean`
CompositeStringExpression.`isWritable(EvaluationContext context, Object rootObject)`
`boolean`
LiteralExpression.`isWritable(EvaluationContext context)`
`boolean`
LiteralExpression.`isWritable(EvaluationContext context, Object rootObject)`
`void`
CompositeStringExpression.`setValue(EvaluationContext context, Object value)`
`void`
CompositeStringExpression.`setValue(EvaluationContext context, Object rootObject, Object value)`
`void`
LiteralExpression.`setValue(EvaluationContext context, Object value)`
`void`
LiteralExpression.`setValue(EvaluationContext context, Object rootObject, Object value)`

## Uses of EvaluationContext in org.springframework.expression.spel

Methods in org.springframework.expression.spel that return EvaluationContext
Modifier and Type
Method
Description
`EvaluationContext`
ExpressionState.`getEvaluationContext()`
Methods in org.springframework.expression.spel with parameters of type EvaluationContext
Modifier and Type
Method
Description
`abstract Object`
CompiledExpression.`getValue(Object target, EvaluationContext context)`
Subclasses of CompiledExpression generated by SpelCompiler will provide an implementation of this method.
Constructors in org.springframework.expression.spel with parameters of type EvaluationContext
Modifier
Constructor
Description
``
`ExpressionState(EvaluationContext context)`
``
`ExpressionState(EvaluationContext context, SpelParserConfiguration configuration)`
``
`ExpressionState(EvaluationContext context, TypedValue rootObject)`
``
`ExpressionState(EvaluationContext context, TypedValue rootObject, SpelParserConfiguration configuration)`

## Uses of EvaluationContext in org.springframework.expression.spel.ast

Methods in org.springframework.expression.spel.ast with parameters of type EvaluationContext
Modifier and Type
Method
Description
`static boolean`
Operator.`equalityCheck(EvaluationContext context, Object left, Object right)`
Perform an equality check for the given operand values.
`boolean`
PropertyOrFieldReference.`isWritableProperty(String name, TypedValue contextObject, EvaluationContext evalContext)`

## Uses of EvaluationContext in org.springframework.expression.spel.standard

Methods in org.springframework.expression.spel.standard that return EvaluationContext
Modifier and Type
Method
Description
`EvaluationContext`
SpelExpression.`getEvaluationContext()`
Return the default evaluation context that will be used if none is supplied on an evaluation call.
Methods in org.springframework.expression.spel.standard with parameters of type EvaluationContext
Modifier and Type
Method
Description
`Object`
SpelExpression.`getValue(EvaluationContext context)`
`<T> T`
SpelExpression.`getValue(EvaluationContext context, Class<T> expectedResultType)`
`Object`
SpelExpression.`getValue(EvaluationContext context, Object rootObject)`
`<T> T`
SpelExpression.`getValue(EvaluationContext context, Object rootObject, Class<T> expectedResultType)`
`Class<?>`
SpelExpression.`getValueType(EvaluationContext context)`
`Class<?>`
SpelExpression.`getValueType(EvaluationContext context, Object rootObject)`
`org.springframework.core.convert.TypeDescriptor`
SpelExpression.`getValueTypeDescriptor(EvaluationContext context)`
`org.springframework.core.convert.TypeDescriptor`
SpelExpression.`getValueTypeDescriptor(EvaluationContext context, Object rootObject)`
`boolean`
SpelExpression.`isWritable(EvaluationContext context)`
`boolean`
SpelExpression.`isWritable(EvaluationContext context, Object rootObject)`
`void`
SpelExpression.`setEvaluationContext(EvaluationContext evaluationContext)`
Set the evaluation context that will be used if none is specified on an evaluation call.
`void`
SpelExpression.`setValue(EvaluationContext context, Object value)`
`void`
SpelExpression.`setValue(EvaluationContext context, Object rootObject, Object value)`

## Uses of EvaluationContext in org.springframework.expression.spel.support

Classes in org.springframework.expression.spel.support that implement EvaluationContext
Modifier and Type
Class
Description
`final class`
`SimpleEvaluationContext`
A basic implementation of `EvaluationContext` that focuses on a subset of essential SpEL features and customization options, targeting simple condition evaluation and in particular data binding scenarios.
`class`
`StandardEvaluationContext`
A powerful and highly configurable `EvaluationContext` implementation.
Methods in org.springframework.expression.spel.support with parameters of type EvaluationContext
Modifier and Type
Method
Description
`boolean`
ReflectiveIndexAccessor.`canRead(EvaluationContext context, Object target, Object index)`
Return `true` if the supplied `target` and `index` can be assigned to the `targetType` and `indexType` configured via the constructor.
`boolean`
ReflectivePropertyAccessor.`canRead(EvaluationContext context, Object target, String name)`
`boolean`
ReflectiveIndexAccessor.`canWrite(EvaluationContext context, Object target, Object index)`
Return `true` if a write-method has been configured and `ReflectiveIndexAccessor.canRead(org.springframework.expression.EvaluationContext, java.lang.Object, java.lang.Object)` returns `true` for the same arguments.
`boolean`
ReflectivePropertyAccessor.`canWrite(EvaluationContext context, Object target, String name)`
`PropertyAccessor`
ReflectivePropertyAccessor.`createOptimalAccessor(EvaluationContext context, Object target, String name)`
Attempt to create an optimized property accessor tailored for a property of a particular name on a particular class.
`TypedValue`
ReflectiveConstructorExecutor.`execute(EvaluationContext context, Object... arguments)`
`TypedValue`
ReflectiveMethodExecutor.`execute(EvaluationContext context, Object target, Object... arguments)`
`TypedValue`
ReflectiveIndexAccessor.`read(EvaluationContext context, Object target, Object index)`
Invoke the configured read-method via reflection and return the result wrapped in a `TypedValue`.
`TypedValue`
ReflectivePropertyAccessor.`read(EvaluationContext context, Object target, String name)`
`MethodExecutor`
DataBindingMethodResolver.`resolve(EvaluationContext context, Object targetObject, String name, List<org.springframework.core.convert.TypeDescriptor> argumentTypes)`
`ConstructorExecutor`
ReflectiveConstructorResolver.`resolve(EvaluationContext context, String typeName, List<org.springframework.core.convert.TypeDescriptor> argumentTypes)`
Locate a constructor on the type.
`MethodExecutor`
ReflectiveMethodResolver.`resolve(EvaluationContext context, Object targetObject, String name, List<org.springframework.core.convert.TypeDescriptor> argumentTypes)`
Locate a method on the type.
`void`
ReflectiveIndexAccessor.`write(EvaluationContext context, Object target, Object index, Object newValue)`
Invoke the configured write-method via reflection.
`void`
ReflectivePropertyAccessor.`write(EvaluationContext context, Object target, String name, Object newValue)`