Sha256: e2a228c3aa9c39a2f279f4fc49df99724b2d871d63f35585e46cdaa3af8da4a2

Contents?: true

Size: 400 Bytes

Versions: 7

Compression:

Stored size: 400 Bytes

Contents

require 'array/hash_builder'

class Array
  def chain_map(*methods)
    result = self
    result = result.map(&(methods.shift)) until methods.empty?

    return result unless block_given?
    result.map { |*args| yield(*args) }
  end

  def as_hash(keys)
    Array::HashBuilder.new(self, keys).build
  end

  def random
    self[rand(size)]
  end

  def random!
    self.slice!(rand(size))
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
darthjee-core_ext-1.3.1 lib/array.rb
darthjee-core_ext-1.3.0 lib/array.rb
darthjee-core_ext-1.2.6 lib/array.rb
bidu-core_ext-1.2.5 lib/array.rb
bidu-core_ext-1.2.4 lib/array.rb
bidu-core_ext-1.2.3 lib/array.rb
bidu-core_ext-1.2.2 lib/array.rb