Class Tilt::NokogiriTemplate
In: lib/tilt/nokogiri.rb
Parent: Template

Nokogiri template implementation. See: nokogiri.org/

Methods

Constants

DOCUMENT_HEADER = /^<\?xml version=\"1\.0\"\?>\n?/

Public Class methods

[Source]

    # File lib/tilt/nokogiri.rb, line 10
10:     def self.engine_initialized?
11:       defined? ::Nokogiri
12:     end

Public Instance methods

[Source]

    # File lib/tilt/nokogiri.rb, line 20
20:     def evaluate(scope, locals)
21:       if data.respond_to?(:to_str)
22:         wrapper = proc { yield.sub(DOCUMENT_HEADER, "") } if block_given?
23:         super(scope, locals, &wrapper)
24:       else
25:         ::Nokogiri::XML::Builder.new.tap(&data).to_xml
26:       end
27:     end

[Source]

    # File lib/tilt/nokogiri.rb, line 14
14:     def initialize_engine
15:       require_template_library 'nokogiri'
16:     end

[Source]

    # File lib/tilt/nokogiri.rb, line 34
34:     def precompiled_postamble(locals)
35:       "xml.to_xml"
36:     end

[Source]

    # File lib/tilt/nokogiri.rb, line 29
29:     def precompiled_preamble(locals)
30:       return super if locals.include? :xml
31:       "xml = ::Nokogiri::XML::Builder.new { |xml| }\n#{super}"
32:     end

[Source]

    # File lib/tilt/nokogiri.rb, line 38
38:     def precompiled_template(locals)
39:       data.to_str
40:     end

[Source]

    # File lib/tilt/nokogiri.rb, line 18
18:     def prepare; end

[Validate]