other.requiredDeclarations );
}
private final VariableContextEntry createContextEntry(final Evaluator eval,
final InternalReadAccessor fieldExtractor) {
ValueType coerced = eval.getCoercedValueType();
if ( coerced.isBoolean() ) {
return new BooleanVariableContextEntry( fieldExtractor,
this.declaration,
this.evaluator );
} else if ( coerced.isFloatNumber() ) {
return new DoubleVariableContextEntry( fieldExtractor,
this.declaration,
this.evaluator );
} else if ( coerced.isIntegerNumber() || coerced.isEvent() ) {
return new LongVariableContextEntry( fieldExtractor,
this.declaration,
this.evaluator );
} else if ( coerced.isChar() ) {
return new CharVariableContextEntry( fieldExtractor,
this.declaration,
this.evaluator );
} else {
return new ObjectVariableContextEntry( fieldExtractor,