aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/core_ext/string/unicode.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2008-06-06 21:34:36 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2008-06-06 21:34:36 -0700
commit84fb971c2f3f26452fbc73467c13d039fe4c2024 (patch)
tree74a99ae6daf478aa729b5434a6b3f6cead33301d /activesupport/lib/active_support/core_ext/string/unicode.rb
parent1d1ea92f405ab6f47942b21233da04aa21498cb7 (diff)
downloadrails-84fb971c2f3f26452fbc73467c13d039fe4c2024.tar.gz
rails-84fb971c2f3f26452fbc73467c13d039fe4c2024.tar.bz2
rails-84fb971c2f3f26452fbc73467c13d039fe4c2024.zip
Remove 1.9's String#chars also
Diffstat (limited to 'activesupport/lib/active_support/core_ext/string/unicode.rb')
-rw-r--r--activesupport/lib/active_support/core_ext/string/unicode.rb24
1 files changed, 11 insertions, 13 deletions
diff --git a/activesupport/lib/active_support/core_ext/string/unicode.rb b/activesupport/lib/active_support/core_ext/string/unicode.rb
index 5e20534d1d..666f7bcb65 100644
--- a/activesupport/lib/active_support/core_ext/string/unicode.rb
+++ b/activesupport/lib/active_support/core_ext/string/unicode.rb
@@ -1,16 +1,16 @@
module ActiveSupport #:nodoc:
module CoreExtensions #:nodoc:
module String #:nodoc:
- unless '1.9'.respond_to?(:force_encoding)
- # Define methods for handling unicode data.
- module Unicode
- def self.append_features(base)
- if '1.8.7'.respond_to?(:chars)
- base.class_eval { remove_method :chars }
- end
- super
+ # Define methods for handling unicode data.
+ module Unicode
+ def self.append_features(base)
+ if '1.8.7 and later'.respond_to?(:chars)
+ base.class_eval { remove_method :chars }
end
+ super
+ end
+ unless '1.9'.respond_to?(:force_encoding)
# +chars+ is a Unicode safe proxy for string methods. It creates and returns an instance of the
# ActiveSupport::Multibyte::Chars class which encapsulates the original string. A Unicode safe version of all
# the String methods are defined on this proxy class. Undefined methods are forwarded to String, so all of the
@@ -44,14 +44,12 @@ module ActiveSupport #:nodoc:
def is_utf8?
ActiveSupport::Multibyte::Handlers::UTF8Handler.consumes?(self)
end
- end
- else
- module Unicode #:nodoc:
- def chars
+ else
+ def chars #:nodoc:
self
end
- def is_utf8?
+ def is_utf8? #:nodoc:
case encoding
when Encoding::UTF_8
valid_encoding?