Class: CollectionUtils::Queue

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

Instance Method Summary collapse

Constructor Details

#initialize(array = []) ⇒ Queue

Constructors



9
10
11
12
13
14
# File 'lib/collection_utils/queue.rb', line 9

def initialize(array=[])
  @queue = []
  array.each do |element|
    enqueue(element)
  end
end

Instance Method Details

#dequeueObject



22
23
24
25
26
# File 'lib/collection_utils/queue.rb', line 22

def dequeue
  element = @queue.first
  @queue = @queue.slice(1..-1)
  return element
end

#enqueue(element) ⇒ Object

Public Methods



18
19
20
# File 'lib/collection_utils/queue.rb', line 18

def enqueue(element)
  @queue << element
end

#frontObject



28
29
30
# File 'lib/collection_utils/queue.rb', line 28

def front
  return @queue.first
end

#is_empty?Boolean

Returns:

  • (Boolean)


36
37
38
# File 'lib/collection_utils/queue.rb', line 36

def is_empty?
  return @queue.size == 0
end

#rearObject



32
33
34
# File 'lib/collection_utils/queue.rb', line 32

def rear
  return @queue.last
end

#sizeObject



40
41
42
# File 'lib/collection_utils/queue.rb', line 40

def size
  return @queue.size
end