@JRubyMethod(name = "[]") public IRubyObject getFieldValue(ThreadContext context, IRubyObject fieldName) { return layout.getMember(context.runtime, fieldName).get(context, this, getMemory()); }
@JRubyMethod(name = "[]") public IRubyObject getFieldValue(ThreadContext context, IRubyObject fieldName) { return layout.getMember(context.runtime, fieldName).get(context, this, getMemory()); }
@JRubyMethod(name = "values") public IRubyObject values(ThreadContext context) { IRubyObject[] values = new IRubyObject[layout.getFieldCount()]; int i = 0; for (StructLayout.Member m : layout.getMembers()) { values[i++] = m.get(context, this, getMemory()); } return RubyArray.newArrayNoCopy(context.runtime, values); }
final IRubyObject getValue(ThreadContext context, IRubyObject name, Storage cache, IRubyObject ptr) { if (!(ptr instanceof AbstractMemory)) { throw context.runtime.newTypeError(ptr, context.runtime.getFFI().memoryClass); } return getMember(context.runtime, name).get(context, cache, (AbstractMemory) ptr); }
@JRubyMethod(name = "values") public IRubyObject values(ThreadContext context) { IRubyObject[] values = new IRubyObject[layout.getFieldCount()]; int i = 0; for (StructLayout.Member m : layout.getMembers()) { values[i++] = m.get(context, this, getMemory()); } return RubyArray.newArrayMayCopy(context.runtime, values); }
@JRubyMethod(name = "[]") public IRubyObject getFieldValue(ThreadContext context, IRubyObject fieldName) { return layout.getMember(context.runtime, fieldName).get(context, this, getMemory()); }
@JRubyMethod(name = "[]") public IRubyObject getFieldValue(ThreadContext context, IRubyObject fieldName) { return layout.getMember(context.runtime, fieldName).get(context, this, getMemory()); }
@JRubyMethod(name = "values") public IRubyObject values(ThreadContext context) { IRubyObject[] values = new IRubyObject[layout.getFieldCount()]; int i = 0; for (StructLayout.Member m : layout.getMembers()) { values[i++] = m.get(context, this, getMemory()); } return RubyArray.newArrayNoCopy(context.runtime, values); }
final IRubyObject getValue(ThreadContext context, IRubyObject name, Storage cache, IRubyObject ptr) { if (!(ptr instanceof AbstractMemory)) { throw context.runtime.newTypeError(ptr, context.runtime.getFFI().memoryClass); } return getMember(context.runtime, name).get(context, cache, (AbstractMemory) ptr); }
@JRubyMethod(name = "values") public IRubyObject values(ThreadContext context) { IRubyObject[] values = new IRubyObject[layout.getFieldCount()]; int i = 0; for (StructLayout.Member m : layout.getMembers()) { values[i++] = m.get(context, this, getMemory()); } return RubyArray.newArrayMayCopy(context.runtime, values); }
final IRubyObject getValue(ThreadContext context, IRubyObject name, Storage cache, IRubyObject ptr) { if (!(ptr instanceof AbstractMemory)) { throw context.runtime.newTypeError(ptr, context.runtime.getFFI().memoryClass); } return getMember(context.runtime, name).get(context, cache, (AbstractMemory) ptr); }
final IRubyObject getValue(ThreadContext context, IRubyObject name, Storage cache, IRubyObject ptr) { if (!(ptr instanceof AbstractMemory)) { throw context.runtime.newTypeError(ptr, context.runtime.getFFI().memoryClass); } return getMember(context.runtime, name).get(context, cache, (AbstractMemory) ptr); }