Class: Array

Inherits:
Object
  • Object
show all
Defined in:
lib/locomotive/core_extensions/array.rb

Instance Method Summary collapse

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 options(*args)
  args.extract_options!
end

options(1, 2)           # => {}
options(1, 2, :a => :b) # => {:a=>:b}


11
12
13
# File 'lib/locomotive/core_extensions/array.rb', line 11

def extract_options!
  last.is_a?(::Hash) ? pop : {}
end

#flatten_onceObject



15
16
17
# File 'lib/locomotive/core_extensions/array.rb', line 15

def flatten_once
  inject([]) { |v, e| v.concat(e)}
end

#to_hashObject



19
20
21
# File 'lib/locomotive/core_extensions/array.rb', line 19

def to_hash
  Hash[*self.flatten_once]
end