///|
fn main {
let template_source =
#|Weekly Inventory Report
#|=======================
#|
#|Store: {{ store.name }}
#|Manager: {{ store.manager | upper }}
#|
#|{% if active %}Status: Active{% else %}Status: Paused{% endif %}
#|
#|Items
#|-----
#|{% for item in items %}- {{ item.name | upper }} x {{ item.count }} @ ${{ item.price }}
#|{% endfor %}
#|Total items: {{ total }}
let output = try {
let template = @mold.Template::parse(template_source)
template.render(
@mold.object({
"items": @mold.array([
@mold.object({
"name": @mold.string("apple"),
"count": @mold.int(12),
"price": @mold.int(3),
}),
@mold.object({
"name": @mold.string("banana"),
"count": @mold.int(8),
"price": @mold.int(2),
}),
]),
"total": @mold.int(2),
"active": @mold.bool(true),
"store": @mold.object({
"name": @mold.string("Moon Market"),
"manager": @mold.string("robin"),
}),
}),
)
} catch {
_ => "render failed"
}
println(output)
}