Package freemarker.ext.jython
Class JythonSequenceModel
- java.lang.Object
-
- freemarker.ext.jython.JythonModel
-
- freemarker.ext.jython.JythonSequenceModel
-
- All Implemented Interfaces:
WrapperTemplateModel
,AdapterTemplateModel
,TemplateBooleanModel
,TemplateCollectionModel
,TemplateHashModel
,TemplateMethodModel
,TemplateMethodModelEx
,TemplateModel
,TemplateScalarModel
,TemplateSequenceModel
public class JythonSequenceModel extends JythonModel implements TemplateSequenceModel, TemplateCollectionModel
Model for Jython sequence objects (PySequence
descendants).
-
-
Field Summary
-
Fields inherited from class freemarker.ext.jython.JythonModel
object, wrapper
-
Fields inherited from interface freemarker.template.TemplateBooleanModel
FALSE, TRUE
-
Fields inherited from interface freemarker.template.TemplateModel
NOTHING
-
Fields inherited from interface freemarker.template.TemplateScalarModel
EMPTY_STRING
-
-
Constructor Summary
Constructors Constructor Description JythonSequenceModel(PyObject object, JythonWrapper wrapper)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TemplateModel
get(int index)
ReturnsPyObject.__finditem__(int)
.TemplateModelIterator
iterator()
Retrieves a template model iterator that is used to iterate over the elements in this collection.int
size()
ReturnsPyObject.__len__()
.-
Methods inherited from class freemarker.ext.jython.JythonModel
exec, get, getAdaptedObject, getAsBoolean, getAsString, getWrappedObject, isEmpty
-
-
-
-
Constructor Detail
-
JythonSequenceModel
public JythonSequenceModel(PyObject object, JythonWrapper wrapper)
-
-
Method Detail
-
get
public TemplateModel get(int index) throws TemplateModelException
ReturnsPyObject.__finditem__(int)
.- Specified by:
get
in interfaceTemplateSequenceModel
- Returns:
- the item at the specified index, or
null
if the index is out of bounds. Note that anull
value is interpreted by FreeMarker as "variable does not exist", and accessing a missing variables is usually considered as an error in the FreeMarker Template Language, so the usage of a bad index will not remain hidden, unless the default value for that case was also specified in the template. - Throws:
TemplateModelException
-
size
public int size() throws TemplateModelException
ReturnsPyObject.__len__()
.- Specified by:
size
in interfaceTemplateSequenceModel
- Returns:
- the number of items in the list.
- Throws:
TemplateModelException
-
iterator
public TemplateModelIterator iterator()
Description copied from interface:TemplateCollectionModel
Retrieves a template model iterator that is used to iterate over the elements in this collection.- Specified by:
iterator
in interfaceTemplateCollectionModel
-
-