Method: Jekyll::Tags::IncludeTag#load_cached_partial

Defined in:
lib/jekyll/tags/include.rb

#load_cached_partial(path, context) ⇒ Object



140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# File 'lib/jekyll/tags/include.rb', line 140

def load_cached_partial(path, context)
  context.registers[:cached_partials] ||= {}
  cached_partial = context.registers[:cached_partials]

  if cached_partial.key?(path)
    cached_partial[path]
  else
    unparsed_file = context.registers[:site]
      .liquid_renderer
      .file(path)
    begin
      cached_partial[path] = unparsed_file.parse(read_file(path, context))
    rescue Liquid::Error => e
      e.template_name = path
      e.markup_context = "included " if e.markup_context.nil?
      raise e
    end
  end
end