String#to_xs uses the fast_xs extension if available for Builder speedup.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7773 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
4430a00c04
commit
845e6ff45a
@ -1,4 +1,5 @@
|
||||
require 'erb'
|
||||
require 'builder'
|
||||
|
||||
class ERB
|
||||
module Util
|
||||
|
@ -1,5 +1,7 @@
|
||||
*SVN*
|
||||
|
||||
* String#to_xs uses the fast_xs extension if available for Builder speedup. [Jeremy Kemper]
|
||||
|
||||
* Introduce BasicObject as Builder::BlankSlate for Ruby 1.9 forward compatibility. [Jeremy Kemper]
|
||||
|
||||
* Unbundle Builder in favor of a gem dependency. [Jeremy Kemper]
|
||||
|
@ -18,6 +18,7 @@ task :default => :test
|
||||
Rake::TestTask.new { |t|
|
||||
t.pattern = 'test/**/*_test.rb'
|
||||
t.verbose = true
|
||||
t.warning = true
|
||||
}
|
||||
|
||||
# Create compressed packages
|
||||
|
@ -24,6 +24,8 @@
|
||||
$:.unshift(File.dirname(__FILE__))
|
||||
$:.unshift(File.dirname(__FILE__) + "/active_support/vendor")
|
||||
|
||||
require 'rubygems'
|
||||
|
||||
require 'active_support/basic_object'
|
||||
|
||||
require 'active_support/inflector'
|
||||
|
@ -1,6 +1,5 @@
|
||||
# Ruby 1.9 introduces BasicObject. Use Builder's BlankSlate before then.
|
||||
# Ruby 1.9 introduces BasicObject. Use Builder's BlankSlate until then.
|
||||
unless defined? BasicObject
|
||||
require 'rubygems'
|
||||
require 'builder'
|
||||
require 'builder/blankslate'
|
||||
BasicObject = Builder::BlankSlate
|
||||
end
|
||||
|
@ -1,3 +1,5 @@
|
||||
require 'builder'
|
||||
|
||||
module ActiveSupport #:nodoc:
|
||||
module CoreExtensions #:nodoc:
|
||||
module Array #:nodoc:
|
||||
|
@ -2,6 +2,7 @@
|
||||
require 'xml_simple'
|
||||
require 'cgi'
|
||||
require 'base64'
|
||||
require 'builder'
|
||||
|
||||
# Extensions needed for Hash#to_query
|
||||
class Object
|
||||
|
@ -4,6 +4,7 @@
|
||||
require 'active_support/core_ext/string/starts_ends_with'
|
||||
require 'active_support/core_ext/string/iterators' unless 'test'.respond_to?(:each_char)
|
||||
require 'active_support/core_ext/string/unicode'
|
||||
require 'active_support/core_ext/string/xchar'
|
||||
|
||||
class String #:nodoc:
|
||||
include ActiveSupport::CoreExtensions::String::Access
|
||||
|
10
activesupport/lib/active_support/core_ext/string/xchar.rb
Normal file
10
activesupport/lib/active_support/core_ext/string/xchar.rb
Normal file
@ -0,0 +1,10 @@
|
||||
begin
|
||||
require 'fast_xs'
|
||||
|
||||
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
|
@ -5,13 +5,15 @@
|
||||
require 'active_support'
|
||||
|
||||
# Wrap tests that use Mocha and skip if unavailable.
|
||||
def uses_mocha(test_name)
|
||||
require 'rubygems'
|
||||
gem 'mocha', '>= 0.5.5'
|
||||
require 'mocha'
|
||||
yield
|
||||
rescue LoadError
|
||||
$stderr.puts "Skipping #{test_name} tests. `gem install mocha` and try again."
|
||||
unless defined? uses_mocha
|
||||
def uses_mocha(test_name)
|
||||
require 'rubygems'
|
||||
gem 'mocha', '>= 0.5.5'
|
||||
require 'mocha'
|
||||
yield
|
||||
rescue LoadError
|
||||
$stderr.puts "Skipping #{test_name} tests. `gem install mocha` and try again."
|
||||
end
|
||||
end
|
||||
|
||||
# Show backtraces for deprecated behavior for quicker cleanup.
|
||||
|
Loading…
Reference in New Issue
Block a user