Module pl.template
A template preprocessor.
Originally by [Ricki Lake](http://lua-users.org/wiki/SlightlyLessSimpleLuaPreprocessor)
There are two rules:
* lines starting with # are Lua * otherwise, `$(expr)` is the result of evaluating `expr`
Example:
# for i = 1,3 do $(i) Hello, Word! # end ===> 1 Hello, Word! 2 Hello, Word! 3 Hello, Word!
Other escape characters can be used, when the defaults conflict with the output language.
> for _,n in pairs{'one','two','three'} do static int l_${n} (luaState *state); > end
See the Guide.
Dependencies: `pl.utils`
Functions
substitute (str, env) | expand the template using the specified environment. |
Functions
- substitute (str, env)
-
expand the template using the specified environment.
Parameters:
- str the template string
- env
the environment (by default empty).
There are three special fields in the environment table_parent
continue looking up in this table_brackets
; default is '()', can be any suitable bracket pair_escape
; default is '#'