Package com.github.mustachejava
Interface ObjectHandler
- All Known Implementing Classes:
BaseObjectHandler,ReflectionObjectHandler,SimpleObjectHandler,TypeCheckingHandler
public interface ObjectHandler
The ObjectHandler is responsible for creating wrappers to find values
in scopes at runtime and to coerce those results to the appropriate Java types
-
Method Summary
Modifier and TypeMethodDescriptionCoerce results to Java native iterables, functions, callables.createBinding(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.Call Iteration.next() either 0 (true) or 1 (fale) times.Find a value named "name" in the array of scopes in reverse order.Iterate over an object by calling Iteration.next for each value.Turns an object into the string representation that should be displayed in templates.
-
Method Details
-
find
Find a value named "name" in the array of scopes in reverse order.- Parameters:
name- the variable namescopes- the ordered list of scopes- Returns:
- a wrapper that can be used to extract a value
-
coerce
Coerce results to Java native iterables, functions, callables.- Parameters:
object- transform an unknown type to a known type- Returns:
- the new object
-
iterate
Iterate over an object by calling Iteration.next for each value.- Parameters:
iteration- callback for the next iterationwriter- the writer to write toobject- the current objectscopes- the scopes present- Returns:
- the current writer
-
falsey
Call Iteration.next() either 0 (true) or 1 (fale) times.- Parameters:
iteration- callback for the next iterationwriter- the writer to write toobject- the current objectscopes- the scopes present- Returns:
- the current writer
-
createBinding
Each call site has its own binding to allow for fine grained caching without a separate parallel hierarchy of objects.- Parameters:
name- the name that we boundtc- the textual context of the binding sitecode- the code that was bound- Returns:
- the binding
-
stringify
Turns an object into the string representation that should be displayed in templates.- Parameters:
object- the object to be displayed- Returns:
- a string representation of the object.
-
makeList
-