Class: Surrogate::Value::ValueQueue

Inherits:
BaseValue
  • Object
show all
Defined in:
lib/surrogate/values.rb

Constant Summary collapse

QueueEmpty =
Class.new SurrogateError

Instance Method Summary collapse

Methods inherited from BaseValue

#factory, #initialize

Constructor Details

This class inherits a constructor from Surrogate::Value::BaseValue

Instance Method Details

#dequeueObject

Raises:



59
60
61
62
# File 'lib/surrogate/values.rb', line 59

def dequeue
  raise QueueEmpty if empty?
  queue.shift
end

#empty?Boolean

Returns:

  • (Boolean)


64
65
66
# File 'lib/surrogate/values.rb', line 64

def empty?
  queue.empty?
end

#queueObject



55
56
57
# File 'lib/surrogate/values.rb', line 55

def queue
  @value
end

#value(method_name) ⇒ Object



47
48
49
50
51
52
53
# File 'lib/surrogate/values.rb', line 47

def value(method_name)
  if empty?
    raise QueueEmpty
  else
    factory(dequeue).value(method_name)
  end
end