Class | Tilt::RadiusTemplate |
In: |
lib/tilt/radius.rb
|
Parent: | Template |
Radius Template github.com/jlong/radius/
# File lib/tilt/radius.rb, line 11 11: def self.context_class 12: @context_class ||= Class.new(Radius::Context) do 13: attr_accessor :tilt_scope 14: 15: def tag_missing(name, attributes) 16: tilt_scope.__send__(name) 17: end 18: 19: def dup 20: i = super 21: i.tilt_scope = tilt_scope 22: i 23: end 24: end 25: end
# File lib/tilt/radius.rb, line 19 19: def dup 20: i = super 21: i.tilt_scope = tilt_scope 22: i 23: end
# File lib/tilt/radius.rb, line 34 34: def evaluate(scope, locals, &block) 35: context = self.class.context_class.new 36: context.tilt_scope = scope 37: context.define_tag("yield") do 38: block.call 39: end 40: locals.each do |tag, value| 41: context.define_tag(tag) do 42: value 43: end 44: end 45: 46: options = {:tag_prefix => 'r'}.merge(@options) 47: parser = Radius::Parser.new(context, options) 48: parser.parse(data) 49: end
# File lib/tilt/radius.rb, line 27 27: def initialize_engine 28: require_template_library 'radius' 29: end