Sha256: e8c6dc024113a31ac98123c8c4ecc952ab47da339c5a48ce288e101f8b2ff4f3
Contents?: true
Size: 559 Bytes
Versions: 6
Compression:
Stored size: 559 Bytes
Contents
# frozen_string_literal: true module GirFFI # Helper class for storing objects for later retrieval. Used to store user # data arguments. class ObjectStore def initialize @store = {} end def store(obj) return FFI::Pointer::NULL if obj.nil? # FIXME: Don't use object_id! key = obj.object_id @store[key] = obj FFI::Pointer.new(key) end def fetch(ptr) return if ptr.null? key = ptr.address if @store.key? key @store[key] else ptr end end end end
Version data entries
6 entries across 6 versions & 1 rubygems