Class: CircularList::List

Inherits:
Object
  • Object
show all
Defined in:
lib/circular_list.rb

Instance Method Summary collapse

Constructor Details

#initialize(array) ⇒ List

Returns a new instance of List.



5
6
7
# File 'lib/circular_list.rb', line 5

def initialize(array)
  @arr = array
end

Instance Method Details

#fetch_after(e) ⇒ Object



21
22
23
# File 'lib/circular_list.rb', line 21

def fetch_after(e)
  fetch_next(@arr.index(e))
end

#fetch_before(e) ⇒ Object



25
26
27
# File 'lib/circular_list.rb', line 25

def fetch_before(e)
  fetch_previous(@arr.index(e))
end

#fetch_next(index = 0) ⇒ Object



17
18
19
# File 'lib/circular_list.rb', line 17

def fetch_next(index=0)
  index.nil? ? nil : @arr.push(@arr.shift)[index]
end

#fetch_previous(index = 0) ⇒ Object



13
14
15
# File 'lib/circular_list.rb', line 13

def fetch_previous(index=0)
  index.nil? ? nil : @arr.unshift(@arr.pop)[index]
end

#sizeObject



9
10
11
# File 'lib/circular_list.rb', line 9

def size
  @arr.size
end