Method: Tilt::RadiusTemplate#evaluate

Defined in:
lib/tilt/radius.rb

#evaluate(scope, locals, &block) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/tilt/radius.rb', line 27

def evaluate(scope, locals, &block)
  context = self.class.context_class.new
  context.tilt_scope = scope
  context.define_tag("yield") do
    block.call
  end
  locals.each do |tag, value|
    context.define_tag(tag) do
      value
    end
  end

  options = {:tag_prefix => 'r'}.merge(@options)
  parser = Radius::Parser.new(context, options)
  parser.parse(data)
end