Sha256: 62315575e2f36a06c1957898254710e38bf93df2fad775f64612847fda36e21b
Contents?: true
Size: 1.92 KB
Versions: 3
Compression:
Stored size: 1.92 KB
Contents
require 'overrides_tracker/version' # dependency for extracting method bodies and comments require 'method_source' require 'overrides_tracker/version' require 'overrides_tracker/methods_collector' require 'overrides_tracker/file_observer' require 'overrides_tracker/string_colorizer' require 'overrides_tracker/util' require 'overrides_tracker/comparer' require 'overrides_tracker/api' require 'overrides_tracker/hash_decorator' module OverridesTracker end # We only want to do this core ruby monkey patching when using cli if defined? OVERRIDES_TRACKER_TRACKING_ENABLED Object.class_eval do class << self def inherited(subclass) subclass.class_eval do def self.overrides_tracker_finished_file clazz = ancestors.first save_methods_of_class(clazz) end end subclass.extend OverridesTracker::FileObserver end def save_methods_of_class(clazz) puts "Reading...#{clazz.name}" inst_methods = clazz.instance_methods(false) inst_methods.each do |inst_method| method = clazz.instance_method(inst_method) method_hash = OverridesTracker::Util.method_hash(method) OverridesTracker::MethodsCollector.instance.add_method_for_class(:instance_methods, clazz.name, inst_method, method_hash) end single_methods = clazz.singleton_methods(false) single_methods.each do |single_method| next unless single_method != :overrides_tracker_finished_file method = clazz.singleton_method(single_method) method_hash = OverridesTracker::Util.method_hash(method) OverridesTracker::MethodsCollector.instance.add_method_for_class(:singleton_methods, clazz.name, single_method, method_hash) end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
overrides_tracker-0.2.0 | lib/overrides_tracker.rb |
overrides_tracker-0.1.13 | lib/overrides_tracker.rb |
overrides_tracker-0.1.12 | lib/overrides_tracker.rb |