aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/core_ext/name_error.rb
blob: 42b89d3d282dc37e9e525acaab214f0d3e38d2f6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Add a +missing_name+ method to NameError instances.
class NameError < StandardError
  
  # Add a method to obtain the missing name from a NameError.
  def missing_name
    $1 if /((::)?([A-Z]\w*)(::[A-Z]\w*)*)$/ =~ message
  end
  
  # Was this exception raised because the given name was missing?
  def missing_name?(name)
    missing_name == name.to_s
  end
  
end