Class: Sinicum::Navigation::NavigationElementList

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/sinicum/navigation/navigation_element_list.rb

Overview

Public: Wrapper around the navigation element array that exposes a NavigationStatus in the #each iteration.

Instance Method Summary collapse

Constructor Details

#initialize(navigation_elements) ⇒ NavigationElementList

Returns a new instance of NavigationElementList.



8
9
10
# File 'lib/sinicum/navigation/navigation_element_list.rb', line 8

def initialize(navigation_elements)
  @navigation_elements = navigation_elements
end

Instance Method Details

#each(&block) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/sinicum/navigation/navigation_element_list.rb', line 12

def each(&block)
  count = 0
  @navigation_elements.each do |el|
    block.call(el, NavigationStatus.new(@navigation_elements.size, count))
    count += 1
  end
end

#firstObject



24
25
26
# File 'lib/sinicum/navigation/navigation_element_list.rb', line 24

def first
  @navigation_elements.first
end

#lastObject



28
29
30
# File 'lib/sinicum/navigation/navigation_element_list.rb', line 28

def last
  @navigation_elements.last
end

#sizeObject



20
21
22
# File 'lib/sinicum/navigation/navigation_element_list.rb', line 20

def size
  @navigation_elements.size
end