Class: Wref::Implementations::Ref

Inherits:
Object
  • Object
show all
Defined in:
lib/wref/implementations/ref.rb

Instance Method Summary collapse

Constructor Details

#initialize(object) ⇒ Ref

Returns a new instance of Ref.



2
3
4
5
# File 'lib/wref/implementations/ref.rb', line 2

def initialize(object)
  require "ref"
  @ref = ::Ref::WeakReference.new(object)
end

Instance Method Details

#alive?Boolean

Returns:

  • (Boolean)


17
18
19
20
21
22
23
# File 'lib/wref/implementations/ref.rb', line 17

def alive?
  if @ref.object
    return true
  else
    return false
  end
end

#getObject



7
8
9
# File 'lib/wref/implementations/ref.rb', line 7

def get
  @ref.object
end

#get!Object

Raises:



11
12
13
14
15
# File 'lib/wref/implementations/ref.rb', line 11

def get!
  object = @ref.object
  raise Wref::Recycled unless object
  return object
end