Sha256: 53930d23e5c4049aa39ae86e75515078e6c1fc28d0549bd9be6f8faf2171107e
Contents?: true
Size: 1002 Bytes
Versions: 2
Compression:
Stored size: 1002 Bytes
Contents
require 'zombie_scout/ruby_project' require 'zombie_scout/method_finder' require 'zombie_scout/method_call_finder' module ZombieScout class Mission def initialize(globs) puts "Scouting out #{Dir.pwd}!" @ruby_project = RubyProject.new(*globs) end def scout zombies.each do |zombie| puts [zombie.location, zombie.name] * "\t" end puts "Scouted #{methods.size} methods in #{sources.size} files. Found #{zombies.size} potential zombies." end private def zombies @zombies ||= methods.select { |method| might_be_dead?(method) } end def methods @methods ||= sources.map { |ruby_source| MethodFinder.new(ruby_source).find_methods }.flatten end def sources @sources ||= @ruby_project.ruby_sources end def might_be_dead?(method) @method_call_counter ||= MethodCallFinder.new(@ruby_project) @method_call_counter.count_calls(method.name) < 2 end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
zombie_scout-0.0.2 | lib/zombie_scout/mission.rb |
zombie_scout-0.0.1 | lib/zombie_scout/mission.rb |