Sha256: 721fa11b28702243a6af6d3ef11d287c392a11de5e5745dfca4915012bec9ff4

Contents?: true

Size: 605 Bytes

Versions: 13

Compression:

Stored size: 605 Bytes

Contents

class Array
  # Wraps the object in an Array unless it's an Array.  Converts the
  # object to an Array using #to_ary if it implements that.
  #
  # It differs with Array() in that it does not call +to_a+ on
  # the argument:
  #
  #   Array(:foo => :bar)      # => [[:foo, :bar]]
  #   Array.wrap(:foo => :bar) # => [{:foo => :bar}]
  #
  #   Array("foo\nbar")        # => ["foo\n", "bar"], in Ruby 1.8
  #   Array.wrap("foo\nbar")   # => ["foo\nbar"]
  def self.wrap(object)
    if object.nil?
      []
    elsif object.respond_to?(:to_ary)
      object.to_ary
    else
      [object]
    end
  end
end

Version data entries

13 entries across 13 versions & 3 rubygems

Version Path
cassandra_mapper-0.0.1 lib/cassandra_mapper/core_ext/array/wrap.rb
activesupport-3.0.0.rc lib/active_support/core_ext/array/wrap.rb
csd-0.1.5 lib/active_support/core_ext/array/wrap.rb
csd-0.1.4 lib/active_support/core_ext/array/wrap.rb
csd-0.1.3 lib/active_support/core_ext/array/wrap.rb
csd-0.1.2 lib/active_support/core_ext/array/wrap.rb
csd-0.1.1 lib/active_support/core_ext/array/wrap.rb
csd-0.1.0 lib/active_support/core_ext/array/wrap.rb
csd-0.0.16 lib/active_support/core_ext/array/wrap.rb
activesupport-3.0.0.beta4 lib/active_support/core_ext/array/wrap.rb
activesupport-3.0.0.beta3 lib/active_support/core_ext/array/wrap.rb
activesupport-3.0.0.beta2 lib/active_support/core_ext/array/wrap.rb
activesupport-3.0.0.beta lib/active_support/core_ext/array/wrap.rb