Template
provides a basic templating mechanism to replace values in a source
String, and to have some basic logic.
A complete documentation of the supported syntax is available at: https://haxe.org/manual/std-template.html
Static variables
Constructor
new(str:String)
Creates a new Template
instance from str
.
str
is parsed into tokens, which are stored for internal use. This
means that multiple execute()
operations on a single Template
instance
are more efficient than one execute()
operations on multiple Template
instances.
If str
is null
, the result is unspecified.
Methods
execute(context:Dynamic, ?macros:Dynamic):String
Executes this
Template
, taking into account context
for
replacements and macros
for callback functions.
If context
has a field name
, its value replaces all occurrences of
::name::
in the Template
. Otherwise Template.globals
is checked instead,
If name
is not a field of that either, ::name::
is replaced with null
.
If macros
has a field name
, all occurrences of $$name(args)
are
replaced with the result of calling that field. The first argument is
always the resolve()
method, followed by the given arguments.
If macros
has no such field, the result is unspecified.
If context
is null
, the result is unspecified. If macros
is null
,
no macros are used.