public class Struct extends MemoryObject implements StructLayout.Storage
RubyObject.Data
RubyBasicObject.Finalizer
FIELD_ALLOCATED_CLASSES, FIELD_ALLOCATORS, IVAR_INSPECTING_OBJECT_ALLOCATOR, OBJECT_ALLOCATOR, OBJECT_VAR0_ALLOCATOR, OBJECT_VAR1_ALLOCATOR, OBJECT_VAR2_ALLOCATOR, OBJECT_VAR3_ALLOCATOR, OBJECT_VAR4_ALLOCATOR, OBJECT_VAR5_ALLOCATOR, OBJECT_VAR6_ALLOCATOR, OBJECT_VAR7_ALLOCATOR, OBJECT_VAR8_ALLOCATOR, OBJECT_VAR9_ALLOCATOR, REIFYING_OBJECT_ALLOCATOR
ALL_F, BASICOBJECT_ALLOCATOR, COMPARE_BY_IDENTITY_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, IS_OVERLAID_F, metaClass, NEVER, NIL_F, REFINED_MODULE_F, STAMP_OFFSET, TAINTED_F, UNDEF, UNTRUST_F, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F, USER8_F, USER9_F, USERA_F, VAR_TABLE_OFFSET, varTable, varTableStamp
NULL_ARRAY
Constructor and Description |
---|
Struct(Ruby runtime,
RubyClass klass)
Creates a new StructLayout instance.
|
getMemoryIO, setMemoryIO
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, eqlInternal, equalInternal, equals, getNativeClassIndex, hashCode, initialize, inspect, op_eqq, puts, specificEval, toString
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkFrozen, checkStringType, checkStringType19, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, createBasicObjectClass, dataGetStruct, dataGetStructChecked, dataWrapStruct, display, dup, ensureInstanceVariablesSettable, eql_p, eql, equal_p, equal_p19, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, freeze, frozen_p, getFFIHandle, getFlag, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getJavaClass, getMetaClass, getNativeHandle, getNativeTypeIndex, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hash, hashyInspect, hasInstanceVariable, hasInternalVariable, hasVariables, id, infectBy, initialize_copy, initialize19, inspect, inspectHashCode, instance_eval, instance_eval, instance_eval, instance_eval, instance_eval19, instance_eval19, instance_eval19, instance_eval19, instance_exec, instance_exec19, instance_of_p, instance_variable_defined_p, instance_variable_get, instance_variable_set, instance_variables, instance_variables19, isBuiltin, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isSpecialConst, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method_missing19, method, method19, methods, methods, methods19, nil_p, OBJ_INIT_COPY, objInitCopy, op_cmp, op_equal_19, op_equal, op_match, op_match19, op_not_equal, op_not_match, op_not, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, rbClone, rbInspect, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respond_to_p19, respond_to_p19, respondsTo, respondsToMissing, respondsToMissing, send, send, send, send, send, send19, send19, send19, send19, setFFIHandle, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setNativeHandle, setTaint, setUntrusted, setVariable, singleton_method_added19, singleton_method_removed19, singleton_method_undefined19, singleton_methods, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, taint, tainted_p, testFrozen, testFrozen, to_a, to_s, toJava, trust, type_deprecated, type, untaint, untrust, untrusted_p, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableRemove, variableTableStore, variableTableSync, yieldUnder, yieldUnder
public static RubyClass createStructClass(Ruby runtime, RubyModule module)
runtime
- The JRuby runtime to register the new class in.public IRubyObject initialize(ThreadContext context)
initialize
in class RubyObject
public IRubyObject initialize(ThreadContext context, IRubyObject ptr)
public IRubyObject initialize(ThreadContext context, IRubyObject[] args)
public IRubyObject initialize_copy(ThreadContext context, IRubyObject other)
public static IRubyObject allocateIn(ThreadContext context, IRubyObject klass)
public static IRubyObject allocateIn(ThreadContext context, IRubyObject klass, IRubyObject clearArg)
public static IRubyObject allocateOut(ThreadContext context, IRubyObject klass)
public static IRubyObject allocateOut(ThreadContext context, IRubyObject klass, IRubyObject clearArg)
public static IRubyObject allocateInOut(ThreadContext context, IRubyObject klass)
public static IRubyObject allocateInOut(ThreadContext context, IRubyObject klass, IRubyObject clearArg)
public static IRubyObject size(ThreadContext context, IRubyObject structClass)
public static IRubyObject alignment(ThreadContext context, IRubyObject structClass)
public static IRubyObject set_layout(ThreadContext context, IRubyObject structClass, IRubyObject layout)
public static IRubyObject members(ThreadContext context, IRubyObject structClass)
public static IRubyObject offsets(ThreadContext context, IRubyObject structClass)
public static IRubyObject offset_of(ThreadContext context, IRubyObject structClass, IRubyObject fieldName)
public IRubyObject getFieldValue(ThreadContext context, IRubyObject fieldName)
public IRubyObject setFieldValue(ThreadContext context, IRubyObject fieldName, IRubyObject fieldValue)
public IRubyObject getLayout(ThreadContext context)
public IRubyObject pointer(ThreadContext context)
public IRubyObject members(ThreadContext context)
public IRubyObject values(ThreadContext context)
public IRubyObject offsets(ThreadContext context)
public IRubyObject offset_of(ThreadContext context, IRubyObject fieldName)
public IRubyObject size(ThreadContext context)
public IRubyObject alignment(ThreadContext context)
public IRubyObject null_p(ThreadContext context)
public final IRubyObject order(ThreadContext context)
public final IRubyObject order(ThreadContext context, IRubyObject byte_order)
public IRubyObject clear(ThreadContext context)
public final AbstractMemory getMemory()
protected final MemoryIO allocateMemoryIO()
allocateMemoryIO
in class MemoryObject
public final IRubyObject getCachedValue(StructLayout.Member member)
getCachedValue
in interface StructLayout.Storage
public final void putCachedValue(StructLayout.Member member, IRubyObject value)
putCachedValue
in interface StructLayout.Storage
public void putReference(StructLayout.Member member, Object value)
putReference
in interface StructLayout.Storage
Copyright © 2001-2015 JRuby. All Rights Reserved.