Class: Array

Inherits:
Object
  • Object
show all
Defined in:
lib/cafe_car/core_ext/array.rb

Direct Known Subclasses

CafeCar::Fields

Instance Method Summary collapse

Instance Method Details

#extract!(pattern = nil, &block) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/cafe_car/core_ext/array.rb', line 12

def extract!(pattern = nil, &block)
  block = -> { pattern === _1 } if pattern
  return to_enum(:extract!) { size } unless block

  extracted_elements = []

  reject! do |element|
    extracted_elements << element if block.(element)
  end

  extracted_elements
end

#overlap(other) ⇒ Object



4
5
6
7
8
9
10
# File 'lib/cafe_car/core_ext/array.rb', line 4

def overlap(other)
  0.upto(size) do |i|
    if other.start_with? drop(i)
      return slice(0, i) + other
    end
  end
end