module MachineGun::Bridge
Public Class Methods
command(cmd, in_hash)
click to toggle source
# File lib/machine-gun/bridge.rb, line 17 def self.command(cmd, in_hash) input = JSON.generate(in_hash) rescue nil out_ptr = FFI::MemoryPointer.new(:pointer, 1) BridgeCommand(cmd, input, out_ptr) out_json = out_ptr.read_pointer.read_string.force_encoding('UTF-8') Free(out_ptr.read_pointer) result = JSON.load(out_json) if result && result["error"] raise Error.new(result["code"], result["error"]) end result end
lib_path()
click to toggle source
# File lib/machine-gun/bridge.rb, line 8 def self.lib_path path = "../#{OS.host}/#{OS.arch}/machine-gun.so" File.absolute_path(File.join(File.dirname(__FILE__), path)) end