Revision b6b8c0379fce5907c435fa305f5ac8ee99659de5 authored by Frank Taillandier on 06 July 2020, 21:09:01 UTC, committed by GitHub on 06 July 2020, 21:09:01 UTC
props: @beep @ashmaroli
1 parent bbde471
capture-assign.rb
#!/usr/bin/env ruby
require "liquid"
require "benchmark/ips"
puts "Ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}"
puts "Liquid #{Liquid::VERSION}"
template1 = '{% capture foobar %}foo{{ bar }}{% endcapture %}{{ foo }}{{ foobar }}'
template2 = '{% assign foobar = "foo" | append: bar %}{{ foobar }}'
def render(template)
Liquid::Template.parse(template).render("bar" => "42")
end
puts render(template1)
puts render(template2)
Benchmark.ips do |x|
x.report('capture') { render(template1) }
x.report('assign') { render(template2) }
end
Computing file changes ...