diff options
Diffstat (limited to 'activesupport/lib/active_support/core_ext/string')
3 files changed, 5 insertions, 4 deletions
diff --git a/activesupport/lib/active_support/core_ext/string/conversions.rb b/activesupport/lib/active_support/core_ext/string/conversions.rb index 39c2b1b8ed..2b9f8c70f6 100644 --- a/activesupport/lib/active_support/core_ext/string/conversions.rb +++ b/activesupport/lib/active_support/core_ext/string/conversions.rb @@ -1,10 +1,11 @@ require 'date' +require 'active_support/core_ext/time/calculations' class String # 'a'.ord == 'a'[0] for Ruby 1.9 forward compatibility. def ord self[0] - end if RUBY_VERSION < '1.9' + end unless method_defined?(:ord) # Form can be either :utc (default) or :local. def to_time(form = :utc) diff --git a/activesupport/lib/active_support/core_ext/string/iterators.rb b/activesupport/lib/active_support/core_ext/string/iterators.rb index 472de7bc24..2f8aa84024 100644 --- a/activesupport/lib/active_support/core_ext/string/iterators.rb +++ b/activesupport/lib/active_support/core_ext/string/iterators.rb @@ -1,11 +1,10 @@ unless '1.9'.respond_to?(:each_char) - autoload :StringScanner, 'strscan' unless defined? :StringScanner - class String # Yields a single-character string for each character in the string. # When $KCODE = 'UTF8', multi-byte characters are yielded appropriately. def each_char - scanner, char = StringScanner.new(self), /./mu + require 'strscan' unless defined? ::StringScanner + scanner, char = ::StringScanner.new(self), /./mu while c = scanner.scan(char) yield c end diff --git a/activesupport/lib/active_support/core_ext/string/multibyte.rb b/activesupport/lib/active_support/core_ext/string/multibyte.rb index 0f0dfb2443..13208c6ee2 100644 --- a/activesupport/lib/active_support/core_ext/string/multibyte.rb +++ b/activesupport/lib/active_support/core_ext/string/multibyte.rb @@ -1,4 +1,5 @@ # encoding: utf-8 +require 'active_support/multibyte' class String unless '1.9'.respond_to?(:force_encoding) |