Package com.github.mustachejava
Class TypeCheckingHandler
- java.lang.Object
-
- com.github.mustachejava.reflect.BaseObjectHandler
-
- com.github.mustachejava.TypeCheckingHandler
-
- All Implemented Interfaces:
ObjectHandler
public class TypeCheckingHandler extends BaseObjectHandler
Rather than pulling values this looks only at types. To check if a template matches the shape of your view classes, pass in the set of classes you expect to have at runtime in the scope. User: sam Date: 2/3/13 Time: 9:43 AM
-
-
Constructor Summary
Constructors Constructor Description TypeCheckingHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BindingcreateBinding(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.java.io.Writerfalsey(Iteration iteration, java.io.Writer writer, java.lang.Object object, java.util.List<java.lang.Object> scopes)Call Iteration.next() either 0 (true) or 1 (fale) times.Wrapperfind(java.lang.String name, java.util.List<java.lang.Object> scopes)Find a value named "name" in the array of scopes in reverse order.java.io.Writeriterate(Iteration iteration, java.io.Writer writer, java.lang.Object object, java.util.List<java.lang.Object> scopes)Iterate over an object by calling Iteration.next for each value.java.lang.Stringstringify(java.lang.Object object)Turns an object into the string representation that should be displayed in templates.-
Methods inherited from class com.github.mustachejava.reflect.BaseObjectHandler
checkClass, checkField, checkMethod, coerce, findMember, getField, getMethod
-
-
-
-
Method Detail
-
find
public Wrapper find(java.lang.String name, java.util.List<java.lang.Object> scopes)
Description copied from interface:ObjectHandlerFind 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
-
createBinding
public Binding createBinding(java.lang.String name, TemplateContext tc, Code code)
Description copied from interface:ObjectHandlerEach call site has its own binding to allow for fine grained caching without a separate parallel hierarchy of objects.- Specified by:
createBindingin interfaceObjectHandler- Specified by:
createBindingin classBaseObjectHandler- Parameters:
name- the name that we boundtc- the textual context of the binding sitecode- the code that was bound- Returns:
- the binding
-
falsey
public java.io.Writer falsey(Iteration iteration, java.io.Writer writer, java.lang.Object object, java.util.List<java.lang.Object> scopes)
Description copied from interface:ObjectHandlerCall Iteration.next() either 0 (true) or 1 (fale) times.- Specified by:
falseyin interfaceObjectHandler- Overrides:
falseyin classBaseObjectHandler- Parameters:
iteration- callback for the next iterationwriter- the writer to write toobject- the current objectscopes- the scopes present- Returns:
- the current writer
-
iterate
public java.io.Writer iterate(Iteration iteration, java.io.Writer writer, java.lang.Object object, java.util.List<java.lang.Object> scopes)
Description copied from interface:ObjectHandlerIterate over an object by calling Iteration.next for each value.- Specified by:
iteratein interfaceObjectHandler- Overrides:
iteratein classBaseObjectHandler- Parameters:
iteration- callback for the next iterationwriter- the writer to write toobject- the current objectscopes- the scopes present- Returns:
- the current writer
-
stringify
public java.lang.String stringify(java.lang.Object object)
Description copied from interface:ObjectHandlerTurns an object into the string representation that should be displayed in templates.- Specified by:
stringifyin interfaceObjectHandler- Overrides:
stringifyin classBaseObjectHandler- Parameters:
object- the object to be displayed- Returns:
- a string representation of the object.
-
-