Module: Sourcerer::Templating::Engines
- Defined in:
- lib/sourcerer/templating.rb
Overview
This module handles the compilation and rendering of templates.
Constant Summary collapse
- SUPPORTED_ENGINES =
A hash of supported template engines.
{ 'liquid' => 'liquid', 'erb' => 'erb' }.freeze
Class Method Summary collapse
-
.compile(str, engine) ⇒ Object
Compiles a template string using the specified engine.
-
.render(compiled, engine, vars = {}) ⇒ String
Renders a compiled template with the given variables.
Class Method Details
.compile(str, engine) ⇒ Object
Compiles a template string using the specified engine.
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/sourcerer/templating.rb', line 26 def compile str, engine case engine.to_s when 'liquid' Liquid::Template.parse(str) when 'erb' require 'erb' ERB.new(str) else raise ArgumentError, "Unsupported engine: #{engine}" end end |
.render(compiled, engine, vars = {}) ⇒ String
Renders a compiled template with the given variables.
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/sourcerer/templating.rb', line 44 def render compiled, engine, vars = {} case engine.to_s when 'liquid' compiled.render(vars) when 'erb' compiled.result_with_hash(vars) else compiled.to_s end end |