mirror of
https://github.com/haml/haml.git
synced 2022-11-09 12:33:31 -05:00
Optimize string compilation
This commit is contained in:
parent
548593478f
commit
d3ae6ba474
1 changed files with 7 additions and 2 deletions
|
@ -23,10 +23,15 @@ module Hamlit::StringInterpolation
|
|||
case type
|
||||
when :static
|
||||
value = Temple::Utils.escape_html(value) if node.value[:escape_html]
|
||||
value = ::Hamlit::HamlHelpers.find_and_preserve(value, %w(textarea pre code)) if node.value[:preserve]
|
||||
temple << [:static, value]
|
||||
when :dynamic
|
||||
temple << [:escape, node.value[:escape_html] || node.value[:escape_interpolation], [:dynamic, value]]
|
||||
if Hamlit::StaticAnalyzer.static?(value)
|
||||
value = eval(value).to_s
|
||||
value = Temple::Utils.escape_html(value) if node.value[:escape_html] || node.value[:escape_interpolation]
|
||||
temple << [:static, value]
|
||||
else
|
||||
temple << [:escape, node.value[:escape_html] || node.value[:escape_interpolation], [:dynamic, value]]
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue