Sha256: 12ecf1ab3687ce092501ffae08ebff9a5d59cc2f2adc55a15b56e18a768d7e7b

Contents?: true

Size: 659 Bytes

Versions: 12

Compression:

Stored size: 659 Bytes

Contents

module DidYouMean
  module NameErrorFinders
    def self.included(*)
      raise "Do not include this module since it overrides Class.new method."
    end

    def self.new(exception)
      klass = if /uninitialized constant/ =~ exception.original_message
        SimilarClassFinder
      elsif /undefined local variable or method/ =~ exception.original_message
        SimilarNameFinder
      else
        NullFinder
      end

      klass.new(exception)
    end
  end

  finders["NameError"] = NameErrorFinders
end

require 'did_you_mean/finders/name_error_finders/similar_name_finder'
require 'did_you_mean/finders/name_error_finders/similar_class_finder'

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
did_you_mean-0.9.10-java lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.10 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.9-java lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.9 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.8 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.7 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.6-java lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.6 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.5 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.4 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.2 lib/did_you_mean/finders/name_error_finders.rb
did_you_mean-0.9.0 lib/did_you_mean/finders/name_error_finders.rb