Sha256: 2e3c15cba0a7cea26ee972f67a44d34d10a7398acdce4ab3c50ca801933af296
Contents?: true
Size: 578 Bytes
Versions: 1
Compression:
Stored size: 578 Bytes
Contents
module LibC extend FFI::Library # figures out the correct libc for each platform including Windows library = ffi_lib(FFI::Library::LIBC).first # Size_t not working properly on Windows find_type(:size_t) rescue typedef(:ulong, :size_t) # memory allocators attach_function :malloc, [:size_t], :pointer attach_function :free, [:pointer], :void # get a pointer to the free function; used for XS::Message deallocation Free = library.find_symbol('free') # memory movers attach_function :memcpy, [:pointer, :pointer, :size_t], :pointer end # module LibC
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ffi-rxs-1.0.0 | lib/ffi-rxs/libc.rb |