Class: Frank::RadiusTemplate
- Inherits:
-
Tilt::Template
- Object
- Tilt::Template
- Frank::RadiusTemplate
- Defined in:
- lib/frank/tilt_setup.rb
Overview
Radius Template github.com/jlong/radius/
Instance Method Summary collapse
Instance Method Details
#evaluate(scope, locals, &block) ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/frank/tilt_setup.rb', line 49 def evaluate(scope, locals, &block) @context.define_tag("yield") do block.call end (class << @context; self; end).class_eval do define_method :tag_missing do |tag, attr, &block| if locals.key?(tag.to_sym) locals[tag.to_sym] else scope.__send__(tag) # any way to support attr as args? end end end # TODO: how to config tag prefix? parser = Radius::Parser.new(@context, :tag_prefix => 'r') parser.parse(data) end |
#initialize_engine ⇒ Object
40 41 42 43 |
# File 'lib/frank/tilt_setup.rb', line 40 def initialize_engine return if defined? ::Radius require_template_library 'radius' end |
#prepare ⇒ Object
45 46 47 |
# File 'lib/frank/tilt_setup.rb', line 45 def prepare @context = Class.new(Radius::Context).new end |