Class | Tilt::MarkabyTemplate |
In: |
lib/tilt/markaby.rb
|
Parent: | Template |
Markaby github.com/markaby/markaby
# File lib/tilt/markaby.rb, line 7 7: def self.builder_class 8: @builder_class ||= Class.new(Markaby::Builder) do 9: def __capture_markaby_tilt__(&block) 10: __run_markaby_tilt__ do 11: text capture(&block) 12: end 13: end 14: end 15: end
# File lib/tilt/markaby.rb, line 9 9: def __capture_markaby_tilt__(&block) 10: __run_markaby_tilt__ do 11: text capture(&block) 12: end 13: end
# File lib/tilt/markaby.rb, line 28 28: def evaluate(scope, locals, &block) 29: builder = self.class.builder_class.new({}, scope) 30: builder.locals = locals 31: 32: if data.kind_of? Proc 33: (class << builder; self end).send(:define_method, :__run_markaby_tilt__, &data) 34: else 35: builder.instance_eval "def __run_markaby_tilt__\n\#{data}\nend\n", __FILE__, __LINE__ 36: end 37: 38: if block 39: builder.__capture_markaby_tilt__(&block) 40: else 41: builder.__run_markaby_tilt__ 42: end 43: 44: builder.to_s 45: end