diff options
author | Jeremy Kemper <jeremy@bitsweat.net> | 2007-09-27 10:38:37 +0000 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2007-09-27 10:38:37 +0000 |
commit | b01a7c69fc8554c2e696609ea8ab76875d405165 (patch) | |
tree | bbccfb5c2e02b77cae64c5d644a6221dfc900371 /activesupport | |
parent | 888603686737a6f692ca841a32b570056651c0e3 (diff) | |
download | rails-b01a7c69fc8554c2e696609ea8ab76875d405165.tar.gz rails-b01a7c69fc8554c2e696609ea8ab76875d405165.tar.bz2 rails-b01a7c69fc8554c2e696609ea8ab76875d405165.zip |
Alias Object#send to send! for Ruby 1.9 forward compatibility.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7658 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport')
-rw-r--r-- | activesupport/CHANGELOG | 2 | ||||
-rw-r--r-- | activesupport/lib/active_support/core_ext/object/misc.rb | 5 | ||||
-rw-r--r-- | activesupport/test/core_ext/object_and_class_ext_test.rb | 5 |
3 files changed, 12 insertions, 0 deletions
diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index 1546dfb8c0..1d94b13319 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Alias Object#send to send! for Ruby 1.9 forward compatibility. [Jeremy Kemper] + * Backport Object#instance_variable_defined? for Ruby < 1.8.6. [Jeremy Kemper] * BufferedLogger#add doesn't modify the message argument. #9702 [eigentone] diff --git a/activesupport/lib/active_support/core_ext/object/misc.rb b/activesupport/lib/active_support/core_ext/object/misc.rb index b93db689a7..e46cfe1b9b 100644 --- a/activesupport/lib/active_support/core_ext/object/misc.rb +++ b/activesupport/lib/active_support/core_ext/object/misc.rb @@ -1,4 +1,9 @@ class Object + unless respond_to?(:send!) + # Anticipating Ruby 1.9 neutering send + alias send! send + end + # A Ruby-ized realization of the K combinator, courtesy of Mikael Brockman. # # def foo diff --git a/activesupport/test/core_ext/object_and_class_ext_test.rb b/activesupport/test/core_ext/object_and_class_ext_test.rb index 1987b70589..f885d94be3 100644 --- a/activesupport/test/core_ext/object_and_class_ext_test.rb +++ b/activesupport/test/core_ext/object_and_class_ext_test.rb @@ -108,6 +108,11 @@ class ClassExtTest < Test::Unit::TestCase end class ObjectTests < Test::Unit::TestCase + def test_send_bang_aliases_send_before_19 + assert_respond_to 'a', :send! + assert_equal 1, 'a'.send!(:size) + end + def test_suppress_re_raises assert_raises(LoadError) { suppress(ArgumentError) {raise LoadError} } end |