public class ReflectionObjectHandler extends BaseObjectHandler
Modifier and Type | Field and Description |
---|---|
protected static java.lang.reflect.Method |
MAP_METHOD |
Constructor and Description |
---|
ReflectionObjectHandler() |
Modifier and Type | Method and Description |
---|---|
Binding |
createBinding(java.lang.String name,
TemplateContext tc,
Code code)
Each call site has its own binding to allow for fine grained caching without
a separate parallel hierarchy of objects.
|
protected Wrapper |
createWrapper(int scopeIndex,
Wrapper[] wrappers,
java.util.List<? extends com.google.common.base.Predicate<java.lang.Object[]>> guard,
java.lang.reflect.AccessibleObject member,
java.lang.Object[] arguments) |
Wrapper |
find(java.lang.String name,
java.lang.Object[] scopes)
Find a value named "name" in the array of scopes in reverse order.
|
protected Wrapper |
findWrapper(int scopeIndex,
Wrapper[] wrappers,
java.util.List<com.google.common.base.Predicate<java.lang.Object[]>> guards,
java.lang.Object scope,
java.lang.String name) |
static java.lang.Object |
unwrap(ObjectHandler oh,
int scopeIndex,
Wrapper[] wrappers,
java.lang.Object[] scopes) |
checkField, checkMethod, coerce, falsey, findMember, getField, getMethod, iterate
public static java.lang.Object unwrap(ObjectHandler oh, int scopeIndex, Wrapper[] wrappers, java.lang.Object[] scopes) throws GuardException
GuardException
public Wrapper find(java.lang.String name, java.lang.Object[] scopes)
ObjectHandler
protected Wrapper findWrapper(int scopeIndex, Wrapper[] wrappers, java.util.List<com.google.common.base.Predicate<java.lang.Object[]>> guards, java.lang.Object scope, java.lang.String name)
protected Wrapper createWrapper(int scopeIndex, Wrapper[] wrappers, java.util.List<? extends com.google.common.base.Predicate<java.lang.Object[]>> guard, java.lang.reflect.AccessibleObject member, java.lang.Object[] arguments)
public Binding createBinding(java.lang.String name, TemplateContext tc, Code code)
ObjectHandler
createBinding
in interface ObjectHandler
createBinding
in class BaseObjectHandler
Copyright © 2012. All Rights Reserved.