Пример #1
0
 public final IRubyObject invoke(
     ThreadContext context, Function function, HeapInvocationBuffer args) {
   final long address = invoker.invokeAddress(function, args);
   return RubyArray.newArray(
       context.getRuntime(),
       FFIUtil.getString(context.getRuntime(), address),
       new Pointer(context.getRuntime(), NativeMemoryIO.wrap(context.getRuntime(), address)));
 }
Пример #2
0
 public final IRubyObject fromNative(ThreadContext context, int value) {
   final long address = ((long) value) & ADDRESS_MASK;
   return new Pointer(context.getRuntime(), NativeMemoryIO.wrap(context.getRuntime(), address));
 }