class Opal::Parser

def self.default_parser

def self.default_parser
  parser = super
  parser.diagnostics.all_errors_are_fatal = true
  parser.diagnostics.ignore_warnings      = true
  if RUBY_ENGINE == 'opal'
    parser.diagnostics.consumer = ->(diag){}
  else
    parser.diagnostics.consumer = lambda do |diagnostic|
      $stderr.puts(diagnostic.render)
    end
  end
  parser
end

def initialize(*)

def initialize(*)
  super(Opal::AST::Builder.new)
end

def parse(source_buffer)

def parse(source_buffer)
  parsed = super
  rewriten = rewrite(parsed)
  rewriten
end

def rewrite(node)

def rewrite(node)
  Opal::Rewriter.new(node).process
end