Crate mage [−] [src]
Mage is an easy, intuitive and powerful template engine.
Supported keywords: for if include set
Mage support expression evaluate with crate eval.
Built-in functions and operators documentation: eval.
Examples
Render template from string:
use mage::Template; let source = "{{if true}}Hello world!{{if}}"; let output = Template::new().template(source).render().unwrap(); assert_eq!(output, "Hello world!");
Render template from file:
use mage::Template; let output = Template::new() .root("examples") .extension("html") .open("main") .unwrap() .render() .unwrap();
Keywords
For
Loop a value.
{{for value in object}}
{{value}}
{{for}}
{{for value, key in object}}
{{key}}
{{value}}
{{for}}
If
Conditionally render a block.
{{if boolean}}
Hello world!
{{elseif boolean}}
Hello world!
{{elseif boolean}}
Hello world!
{{else}}
Hello world!
{{if}}
Include
Include a sub template.
{{include views/header}}
Set
Set a value to current context.
{{set boolean=true}}
{{set number=123}}
{{set string='Hello world!'}}
Structs
| Cache |
Compiled template cache |
| Function |
Custom function |
| RenderOptions |
Render options |
| Template |
Template builder |
Enums
| Error |
Template parsing error |
| ExpressionError |
Expression parsing error |
| Value |
Represents a JSON value |
Functions
| to_value |
Shortcut function to encode a |
Type Definitions
| Context |
Custom context. |
| Contexts |
Custom contexts. The value of the last context is searched first. |
| Functions |
Custom functions. |