| 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