From a970e32c91848a720825302eebae4d4ca7f290fa Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Sat, 21 Mar 2009 03:05:44 -0700 Subject: Only require builder at startup if we need to monkey with its String#to_xs demands --- activesupport/lib/active_support/core_ext/string/xchar.rb | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'activesupport/lib/active_support/core_ext/string') diff --git a/activesupport/lib/active_support/core_ext/string/xchar.rb b/activesupport/lib/active_support/core_ext/string/xchar.rb index df186e42d7..7183218634 100644 --- a/activesupport/lib/active_support/core_ext/string/xchar.rb +++ b/activesupport/lib/active_support/core_ext/string/xchar.rb @@ -1,11 +1,18 @@ begin - # See http://bogomips.org/fast_xs/ by Eric Wong + # See http://bogomips.org/fast_xs/ by Eric Wong. + # Also included with hpricot. require 'fast_xs' +rescue LoadError + # fast_xs extension unavailable +else + begin + require 'builder' + rescue LoadError + # builder demands the first shot at defining String#to_xs + end class String alias_method :original_xs, :to_xs if method_defined?(:to_xs) alias_method :to_xs, :fast_xs end -rescue LoadError - # fast_xs extension unavailable. end -- cgit v1.2.3