blob: 179ddb045cbf729de21d95216f576e2a1bba0581 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# frozen_string_literal: true
module Jekyll
class Inclusion
attr_reader :site, :name, :path
private :site
def initialize(site, base, name)
@site = site
@name = name
@path = PathManager.join(base, name)
end
def render(context)
@template ||= site.liquid_renderer.file(path).parse(content)
@template.render!(context)
rescue Liquid::Error => e
e.template_name = path
e.markup_context = "included " if e.markup_context.nil?
raise e
end
def content
@content ||= File.read(path, **site.file_read_opts)
end
def inspect
"#{self.class} #{path.inspect}"
end
alias_method :to_s, :inspect
end
end
|