Sha256: 391f083fdde485c7aad175b94f70ea193d85ad295ddebfa75d12442a9d97d7c3

Contents?: true

Size: 664 Bytes

Versions: 2

Compression:

Stored size: 664 Bytes

Contents

#!/usr/bin/env ruby
# frozen_string_literal: true
require 'benchmark/ips'
require 'haml'
require 'faml'
require 'hamlit'
require 'slim'
require 'escape_utils/html/haml'

unless ARGV[0]
  $stderr.puts "Usage: #{$PROGRAM_NAME} template.haml [template.slim]"
  exit 1
end

haml_code = File.read(ARGV[0])
slim_code = ARGV[1] ? File.read(ARGV[1]) : nil

Benchmark.ips do |x|
  x.report('Haml') { Haml::Engine.new(haml_code, ugly: true, escape_html: true) }
  x.report('Faml') { Faml::Engine.new.call(haml_code) }
  x.report('Hamlit') { Hamlit::Engine.new.call(haml_code) }
  if slim_code
    x.report('Slim') { Slim::Engine.new.call(slim_code) }
  end
  x.compare!
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
faml-0.8.1 benchmark/compiling.rb
faml-0.8.0 benchmark/compiling.rb