# File lib/Borges/Utilities/WeakIdentityKeyHash.rb, line 135 def self.by_obj(obj) ref = nil Thread.exclusive do rids = ID_MAP[obj.object_id] if rids.nil? or rids.empty? then raise RefError, "Reference does not exist" end for rid in rids do begin ref = ObjectSpace._id2ref rid rescue RangeError next end return ref unless ref.nil? end raise RefError, "Reference does not exist" end end end