Sha256: b494eac5282a20f04bd237d076602af1b2096a306969ee260b66f611df5405ae
Contents?: true
Size: 561 Bytes
Versions: 17
Compression:
Stored size: 561 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
17 entries across 17 versions & 1 rubygems