TemplateHashModelEx2 (FreeMarker 2.3.35 API)
Description: declaration: package: freemarker.template, interface: TemplateHashModelEx2

Package freemarker.template

# Interface TemplateHashModelEx2

All Superinterfaces:
  `TemplateHashModel`, `TemplateHashModelEx`, `TemplateModel`

All Known Implementing Classes:
  `AllHttpScopesHashModel`, `AllHttpScopesHashModel`, `DefaultMapAdapter`, `Environment.Namespace`, `SimpleHash`, `SimpleMapModel`

public interface TemplateHashModelEx2 extends TemplateHashModelEx
Adds key-value pair listing capability to `TemplateHashModelEx`. While in many cases that can also be achieved with `TemplateHashModelEx.keys()` and then `TemplateHashModel.get(String)`, that has some problems. One is that `TemplateHashModel.get(String)` only accepts string keys, while `TemplateHashModelEx.keys()` can return non-string keys too. The other is that calling `TemplateHashModelEx.keys()` and then `TemplateHashModel.get(String)` for each key can be slower than listing the key-value pairs in one go.

Since:
  2.3.25

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static interface`
  `TemplateHashModelEx2.KeyValuePair`
  A key-value pair in a hash; used for `TemplateHashModelEx2.KeyValuePairIterator`.
  `static interface`
  `TemplateHashModelEx2.KeyValuePairIterator`
  Iterates over the key-value pairs in a hash.

- ## Field Summary

  ### Fields inherited from interface freemarker.template.TemplateModel

  `NOTHING`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `TemplateHashModelEx2.KeyValuePairIterator`
  `keyValuePairIterator()`

  ### Methods inherited from interface freemarker.template.TemplateHashModel

  `get, isEmpty`

  ### Methods inherited from interface freemarker.template.TemplateHashModelEx

  `keys, size, values`

- ## Method Details

  - ### keyValuePairIterator

    TemplateHashModelEx2.KeyValuePairIterator keyValuePairIterator() throws TemplateModelException
    Returns:
      The iterator that walks through the key-value pairs in the hash. Not `null`.
    Throws:
      `TemplateModelException`