Current section

Files

Jump to
glemplate src glemplate@text.erl
Raw

src/glemplate@text.erl

-module(glemplate@text).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/glemplate/text.gleam").
-export([encode/1, render/3]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(" Utilities for rendering plain text templates.\n").
-file("src/glemplate/text.gleam", 9).
?DOC(" An encoder that just returns the content as-is.\n").
-spec encode(binary()) -> gleam@string_tree:string_tree().
encode(Str) ->
gleam_stdlib:identity(Str).
-file("src/glemplate/text.gleam", 14).
?DOC(" Render a plain text template.\n").
-spec render(
glemplate@ast:template(),
gleam@dict:dict(binary(), glemplate@assigns:assign_data()),
gleam@dict:dict(binary(), glemplate@ast:template())
) -> {ok, gleam@string_tree:string_tree()} |
{error, glemplate@renderer:render_error()}.
render(Template, Assigns, Template_cache) ->
glemplate@renderer:render(
Template,
Assigns,
{render_options, fun encode/1, Template_cache}
).