Class: Tooled::Queue
Instance Method Summary collapse
- #<<(value) ⇒ Object (also: #push)
- #[](index) ⇒ Object
- #count ⇒ Object (also: #length)
- #each(&block) ⇒ Object
- #empty? ⇒ Boolean
-
#initialize ⇒ Queue
constructor
A new instance of Queue.
- #peek ⇒ Object
- #pop ⇒ Object
- #to_a ⇒ Object
Constructor Details
#initialize ⇒ Queue
Returns a new instance of Queue.
8 9 10 |
# File 'lib/tooled/queue.rb', line 8 def initialize @queue_values = [] end |
Instance Method Details
#<<(value) ⇒ Object Also known as: push
17 18 19 |
# File 'lib/tooled/queue.rb', line 17 def <<(value) @queue_values << value end |
#[](index) ⇒ Object
30 31 32 |
# File 'lib/tooled/queue.rb', line 30 def [](index) @queue_values[index.to_i] end |
#count ⇒ Object Also known as: length
12 13 14 |
# File 'lib/tooled/queue.rb', line 12 def count @queue_values.count end |
#each(&block) ⇒ Object
42 43 44 |
# File 'lib/tooled/queue.rb', line 42 def each(&block) yield block.call(pop) until empty? end |
#empty? ⇒ Boolean
38 39 40 |
# File 'lib/tooled/queue.rb', line 38 def empty? @queue_values.empty? end |
#peek ⇒ Object
22 23 24 |
# File 'lib/tooled/queue.rb', line 22 def peek @queue_values.first end |
#pop ⇒ Object
26 27 28 |
# File 'lib/tooled/queue.rb', line 26 def pop @queue_values.delete_at(0) end |
#to_a ⇒ Object
34 35 36 |
# File 'lib/tooled/queue.rb', line 34 def to_a @queue_values.reverse.dup end |