class Haml::Exec::Sass

def process_result

and runs the Sass compiler appropriately.
Processes the options set by the command-line arguments,
def process_result
  if @options[:interactive]
    require 'sass'
    require 'sass/repl'
    ::Sass::Repl.new(@options).run
    return
  end
  super
  begin
    input = @options[:input]
    output = @options[:output]
    tree =
      if input.is_a?(File) && !@options[:check_syntax]
        ::Sass::Files.tree_for(input.path, @options[:for_engine])
      else
        # We don't need to do any special handling of @options[:check_syntax] here,
        # because the Sass syntax checking happens alongside evaluation
        # and evaluation doesn't actually evaluate any code anyway.
        ::Sass::Engine.new(input.read(), @options[:for_engine]).to_tree
      end
    input.close() if input.is_a?(File)
    output.write(tree.render)
    output.close() if output.is_a? File
  rescue ::Sass::SyntaxError => e
    raise e if @options[:trace]
    raise "Syntax error on line #{get_line e}: #{e.message}"
  end
end