lib/haml/compiler/silent_script_compiler.rb
# frozen_string_literal: true
module Haml
class Compiler
class SilentScriptCompiler
def compile(node, &block)
if node.children.empty?
[:multi, [:code, node.value[:text]], [:newline]]
else
compile_with_children(node, &block)
end
end
private
def compile_with_children(node, &block)
[:multi,
[:block, node.value[:text],
[:multi, [:newline], yield(node)],
],
]
end
end
end
end