public void put(ThreadContext context, Storage cache, Member m, AbstractMemory ptr, IRubyObject value) { final IRubyObject nativeValue = mappedType.toNative(context, value); nativeFieldIO.put(context, cache, m, ptr, nativeValue); if (isValueReferenceNeeded()) { // keep references to both the ruby and native values to preserve // reference chains cache.putReference(m, new Object[] { value, nativeValue }); } } }
/** * Writes a ruby value to the native struct member as the appropriate native value. * * @param runtime The ruby runtime * @param cache The value cache * @param ptr The struct memory area. * @param value The ruby value to write to the native struct member. */ public final void put(ThreadContext context, Storage cache, AbstractMemory ptr, IRubyObject value) { io.put(context, cache, this, ptr, value); }
public void put(ThreadContext context, Storage cache, Member m, AbstractMemory ptr, IRubyObject value) { final IRubyObject nativeValue = mappedType.toNative(context, value); nativeFieldIO.put(context, cache, m, ptr, nativeValue); if (isValueReferenceNeeded()) { // keep references to both the ruby and native values to preserve // reference chains cache.putReference(m, new Object[] { value, nativeValue }); } } }
public void put(ThreadContext context, Storage cache, Member m, AbstractMemory ptr, IRubyObject value) { final IRubyObject nativeValue = mappedType.toNative(context, value); nativeFieldIO.put(context, cache, m, ptr, nativeValue); if (isValueReferenceNeeded()) { // keep references to both the ruby and native values to preserve // reference chains cache.putReference(m, new Object[] { value, nativeValue }); } } }
/** * Writes a ruby value to the native struct member as the appropriate native value. * * @param runtime The ruby runtime * @param cache The value cache * @param ptr The struct memory area. * @param value The ruby value to write to the native struct member. */ public final void put(ThreadContext context, Storage cache, AbstractMemory ptr, IRubyObject value) { io.put(context, cache, this, ptr, value); }
/** * Writes a ruby value to the native struct member as the appropriate native value. * * @param runtime The ruby runtime * @param cache The value cache * @param ptr The struct memory area. * @param value The ruby value to write to the native struct member. */ public final void put(ThreadContext context, Storage cache, AbstractMemory ptr, IRubyObject value) { io.put(context, cache, this, ptr, value); }
/** * Writes a ruby value to the native struct member as the appropriate native value. * * @param runtime The ruby runtime * @param cache The value cache * @param ptr The struct memory area. * @param value The ruby value to write to the native struct member. */ public final void put(ThreadContext context, Storage cache, AbstractMemory ptr, IRubyObject value) { io.put(context, cache, this, ptr, value); }
public void put(ThreadContext context, Storage cache, Member m, AbstractMemory ptr, IRubyObject value) { final IRubyObject nativeValue = mappedType.toNative(context, value); nativeFieldIO.put(context, cache, m, ptr, nativeValue); if (isValueReferenceNeeded()) { // keep references to both the ruby and native values to preserve // reference chains cache.putReference(m, new Object[] { value, nativeValue }); } } }