Merge pull request #4187 from castlerock/basic_object_in_19
::BasicObject always defined in ruby 19
This commit is contained in:
commit
4e1999d20e
|
@ -1,21 +1,14 @@
|
||||||
module ActiveSupport
|
module ActiveSupport
|
||||||
if defined? ::BasicObject
|
# A class with no predefined methods that behaves similarly to Builder's
|
||||||
# A class with no predefined methods that behaves similarly to Builder's
|
# BlankSlate. Used for proxy classes.
|
||||||
# BlankSlate. Used for proxy classes.
|
class BasicObject < ::BasicObject
|
||||||
class BasicObject < ::BasicObject
|
undef_method :==
|
||||||
undef_method :==
|
undef_method :equal?
|
||||||
undef_method :equal?
|
|
||||||
|
|
||||||
# Let ActiveSupport::BasicObject at least raise exceptions.
|
# Let ActiveSupport::BasicObject at least raise exceptions.
|
||||||
def raise(*args)
|
def raise(*args)
|
||||||
::Object.send(:raise, *args)
|
::Object.send(:raise, *args)
|
||||||
end
|
|
||||||
end
|
|
||||||
else
|
|
||||||
class BasicObject #:nodoc:
|
|
||||||
instance_methods.each do |m|
|
|
||||||
undef_method(m) if m.to_s !~ /(?:^__|^nil\?$|^send$|^object_id$)/
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue