Class: Surrogate::Value::MethodQueue
Constant Summary
collapse
- QueueEmpty =
Class.new StandardError
Instance Method Summary
collapse
factory, #factory, #initialize
Instance Method Details
#dequeue ⇒ Object
68
69
70
71
|
# File 'lib/surrogate/values.rb', line 68
def dequeue
raise QueueEmpty if empty?
queue.shift
end
|
#empty? ⇒ Boolean
73
74
75
|
# File 'lib/surrogate/values.rb', line 73
def empty?
queue.empty?
end
|
#queue ⇒ Object
64
65
66
|
# File 'lib/surrogate/values.rb', line 64
def queue
@value
end
|
#value(hatchling, method_name) ⇒ Object
58
59
60
61
62
|
# File 'lib/surrogate/values.rb', line 58
def value(hatchling, method_name)
factory(dequeue).value(hatchling, method_name)
ensure
hatchling.unset_ivar method_name if empty?
end
|