Class: Array
- Defined in:
- lib/cassandra_mapper/core_ext/array/wrap.rb,
lib/cassandra_mapper/core_ext/array/extract_options.rb
Direct Known Subclasses
Class Method Summary collapse
-
.wrap(object) ⇒ Object
Wraps the object in an Array unless it’s an Array.
Instance Method Summary collapse
-
#extract_options! ⇒ Object
Extracts options from a set of arguments.
Class Method Details
.wrap(object) ⇒ Object
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"]
13 14 15 16 17 18 19 20 21 |
# File 'lib/cassandra_mapper/core_ext/array/wrap.rb', line 13 def self.wrap(object) if object.nil? [] elsif object.respond_to?(:to_ary) object.to_ary else [object] end end |
Instance Method Details
#extract_options! ⇒ Object
Extracts options from a set of arguments. Removes and returns the last element in the array if it’s a hash, otherwise returns a blank hash.
def (*args)
args.
end
(1, 2) # => {}
(1, 2, :a => :b) # => {:a=>:b}
22 23 24 25 26 27 28 |
# File 'lib/cassandra_mapper/core_ext/array/extract_options.rb', line 22 def if last.is_a?(Hash) && last. pop else {} end end |