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:



71
72
73
74
# File 'lib/surrogate/values.rb', line 71

def dequeue
  raise QueueEmpty if empty?
  queue.shift
end

#empty?Boolean

Returns:

  • (Boolean)


76
77
78
# File 'lib/surrogate/values.rb', line 76

def empty?
  queue.empty?
end

#queueObject



67
68
69
# File 'lib/surrogate/values.rb', line 67

def queue
  @value
end

#value(method_name) ⇒ Object



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

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