Class: ConfigTemplates::Models::Renderer

Inherits:
Object
  • Object
show all
Defined in:
lib/config_templates/models/renderer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(template, context) ⇒ Renderer

Returns a new instance of Renderer.



5
6
7
8
# File 'lib/config_templates/models/renderer.rb', line 5

def initialize(template, context)
  @template = template
  @context = context
end

Instance Attribute Details

#templateObject (readonly)

Returns the value of attribute template.



3
4
5
# File 'lib/config_templates/models/renderer.rb', line 3

def template
  @template
end

Instance Method Details

#renderObject



16
17
18
# File 'lib/config_templates/models/renderer.rb', line 16

def render
  @render ||= @template.engine.evaluate @template.content, @context
end

#validate!Object



10
11
12
13
14
# File 'lib/config_templates/models/renderer.rb', line 10

def validate!
  unless @template.validator.valid? render
    raise ::ConfigTemplates::Errors::InvalidTemplate, @template.path
  end
end