class Reference
Reference¶ ↑
Reference provides a way to access object indirectly. This allows for the object itself to be changed on the fly.
a = "HELLO" b = ref(a) puts b #=> "HELLO" c = 10 b.become(c) puts b #=> "10"
Public Class Methods
new(obj)
click to toggle source
# File lib/more/facets/reference.rb, line 50 def self.new(obj) ref = allocate ref.become obj ref end
Public Instance Methods
__value__()
click to toggle source
# File lib/more/facets/reference.rb, line 66 def __value__ @ref end
Also aliased as: instance_delegate
become(obj)
click to toggle source
# File lib/more/facets/reference.rb, line 60 def become(obj) old = @ref @ref = obj old end
method_missing(*args, &block)
click to toggle source
# File lib/more/facets/reference.rb, line 56 def method_missing(*args, &block) @ref.__send__(*args, &block) end