class Concurrent::Transaction

def open(tvar)

def open(tvar)
  entry = @open_tvars[tvar]
  unless entry
    unless tvar.unsafe_lock.try_lock
      Concurrent::abort_transaction
    end
    entry = OpenEntry.new(tvar.unsafe_value, false)
    @open_tvars[tvar] = entry
  end
  entry
end