Class: Banzai::FilterArray

Inherits:
Array
  • Object
show all
Defined in:
lib/banzai/filter_array.rb

Instance Method Summary collapse

Instance Method Details

#insert_after(after_value, value) ⇒ Object

Insert a value immediately after another value

If the preceding value does not exist, the new value is added to the end of the Array.


7
8
9
10
11
# File 'lib/banzai/filter_array.rb', line 7

def insert_after(after_value, value)
  i = index(after_value) || length - 1

  insert(i + 1, value)
end

#insert_before(before_value, value) ⇒ Object

Insert a value immediately before another value

If the succeeding value does not exist, the new value is added to the beginning of the Array.


17
18
19
20
21
22
23
24
25
# File 'lib/banzai/filter_array.rb', line 17

def insert_before(before_value, value)
  i = index(before_value) || -1

  if i < 0
    unshift(value)
  else
    insert(i, value)
  end
end