66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# File 'lib/locomotive/steam/liquid/patches.rb', line 66
def self.load(template_name, context:, parse_context:)
begin
cached_partials = (context.registers[:cached_partials] ||= {})
cached = cached_partials[template_name]
return cached if cached
file_system = (context.registers[:file_system] ||= ::Liquid::Template.file_system)
source = file_system.read_template_file(template_name)
parse_context.partial = true
partial = ::Liquid::Template.parse(source, parse_context)
cached_partials[template_name] = partial
rescue ::Liquid::SyntaxError => e
file_system = (context.registers[:file_system] ||= ::Liquid::Template.file_system)
source = file_system.read_template_file(template_name)
raise Locomotive::Steam::LiquidError.new(e, template_name, source)
end
ensure
parse_context.partial = false
end
|