PromptVault.TemplateEngine behaviour (PromptVault v0.1.0)

View Source

Behaviour for template engine implementations.

Template engines are responsible for rendering templates with assigns. They support different template sources like inline strings, files, and modules.

Summary

Callbacks

Renders a template with the given assigns.

Types

t()

@type t() :: term()

Callbacks

render(template_source, assigns)

@callback render(template_source :: any(), assigns :: map()) ::
  {:ok, iodata()} | {:error, reason :: any()}

Renders a template with the given assigns.

Template sources can be:

  • {:inline, string} - Inline template string
  • {:file, path} - Template file path
  • {:module, module} - Module with render/1 function