# File lib/gauntlet_rubyparser.rb, line 49 def broke name, file, msg warn "bad" self.data[name][file] = msg self.dirty = true end
# File lib/gauntlet_rubyparser.rb, line 35 def diff_pp o1, o2 require 'pp' Tempfile.new('ruby_parser_a') do |file_a| PP.pp o1, file_a Tempfile.new('ruby_parser_b') do |file_b| PP.pp o2, file_b `diff -u #{file_a.path} #{file_b.path}` end end end
# File lib/gauntlet_rubyparser.rb, line 55 def process path, name begin $stderr.print " #{path}: " rp = RubyParser.new r2r = Ruby2Ruby.new old_ruby = File.read(path) begin old_sexp = rp.process old_ruby rescue Racc::ParseError => e self.data[name][path] = :unparsable self.dirty = true return end new_ruby = r2r.process old_sexp.deep_clone begin new_sexp = rp.process new_ruby rescue Racc::ParseError => e broke name, path, "couldn't parse new_ruby: #{e.message.strip}" return end if old_sexp != new_sexp then broke name, path, diff_pp(old_sexp, new_sexp) return end self.data[name][path] = true self.dirty = true warn "good" rescue Interrupt puts "User cancelled" exit 1 rescue Exception => e broke name, path, " UNKNOWN ERROR: #{e}: #{e.message.strip}" end end
# File lib/gauntlet_rubyparser.rb, line 97 def run name warn name Dir["**/*.rb"].sort.each do |path| next if path =~ /gemspec.rb/ # HACK next if data[name][path] == true process path, name end if self.data[name].values.all? { |v| v == true } then warn " ALL GOOD!" self.data[name] = true self.dirty = true end end
Generated with the Darkfish Rdoc Generator 2.