Interface LazilyEvaluatableArguments

  • All Superinterfaces:
    TemplateMethodModel, TemplateModel

    public interface LazilyEvaluatableArguments
    extends TemplateMethodModel
    A marker interface that tells the FreeMarker that the method arguments can be lazily evaluated. Method models implementing this interface declare that their arguments needn't be evaluated before the method is invoked, but that each argument should be evaluated only when it is first retrieved from the argument list by the model. While this interface extends TemplateMethodModel to reinforce the notion that it is to be applied to method models, it can naturally be implemented by classes that implement TemplateMethodModelEx. Note that for the time being, there is a limitation in the FreeMarker implementation that prevents lazy evaluation of arguments of method models that have a Parameters annotation on them. If your class implementing LazilyEvaluatableArguments also has a Parameters annotation, its arguments will be eagerly evaluated. This limitation may be lifted in a future version of FreeMarker.