Class StructLayout
java.lang.Object
jnr.ffi.Type
jnr.ffi.StructLayout
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classBase class for Boolean fieldsprotected classBase implementation of Memberclassclassfinal classfinal classfinal classprotected final classA normal C boolean - 1 byte in sizefinal classfinal classfinal classfinal classclassStructLayout.Enum<T extends Enum<T>>classStructLayout.Enum16<E extends Enum<E>>classStructLayout.Enum32<E extends Enum<E>>classStructLayout.Enum64<E extends Enum<E>>classStructLayout.Enum8<E extends Enum<E>>An 8 bit enum field.protected classStructLayout.EnumField<E extends Enum<E>>Base for all the Enum fields.classStructLayout.EnumLong<E extends Enum<E>>protected classInterface all Struct members must implement.classfinal classfinal classprotected final classfinal classfinal classfinal classfinal classfinal classfinal classfinal classfinal classfinal classfinal classclassfinal classfinal classfinal classfinal classprotected classBase class for all Number structure fields.final classprotected static final classprotected final classSpecialized padding fields for structs.final classclassRepresents a native memory address.final classfinal classclassA 16 bit signed integer field.classA 32 bit signed integer field.classA 64 bit signed integer field.classAn 8 bit signed integerclassA native long integer field.final classfinal classfinal classclassfinal classfinal classfinal classfinal classfinal classfinal classfinal classfinal classclassA 16 bit signed integer field.classA 32 bit signed integer field.classA 64 bit unsigned integer field.classAn 8 bit unsigned integerclassA native long integer field.classclassclassclassprotected final classA Windows BOOL - 4 bytes -
Field Summary
FieldsModifier and TypeFieldDescription(package private) int(package private) static final Charset(package private) StructLayoutprivate final boolean(package private) int(package private) intprivate booleanprivate final Runtime(package private) int(package private) static final Charset -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedStructLayout(Runtime runtime) Creates a newStructLayout.protectedStructLayout(Runtime runtime, int structSize) -
Method Summary
Modifier and TypeMethodDescriptionprotected final intaddField(int size, int align) protected final intaddField(int size, int align, StructLayout.Offset offset) protected final intprotected final intaddField(Type t, StructLayout.Offset offset) private static intalign(int offset, int alignment) final intThe native alignment of this type, in bytesprotected <T extends StructLayout.Field>
T[]array(T[] array) Creates an array ofMemberinstances.protected final voidStarts an array construction sessionprotected final voidarrayEnd()Ends an array construction sessionprotected final StructLayout.Offsetat(int offset) protected final <T> StructLayout.Function<T> protected final <T> StructLayout.Function<T> function(Class<T> closureClass, StructLayout.Offset offset) The native type of this typefinal Runtimeprotected final <T extends StructLayout>
Tinner(T structLayout) final intoffset()final intsize()The size in bytes of this type.toString()Returns a human readableStringrepresentation of the structure.
-
Field Details
-
ASCII
-
UTF8
-
runtime
-
isUnion
private final boolean isUnion- See Also:
-
resetIndex
private boolean resetIndex -
enclosing
StructLayout enclosing -
offset
int offset -
size
int size -
alignment
int alignment -
paddedSize
int paddedSize
-
-
Constructor Details
-
StructLayout
Creates a newStructLayout.- Parameters:
runtime- The current runtime.
-
StructLayout
-
-
Method Details
-
getRuntime
-
size
-
alignment
-
offset
public final int offset() -
getNativeType
Description copied from class:TypeThe native type of this type- Specified by:
getNativeTypein classType- Returns:
- the native type of this type
-
toString
-
align
private static int align(int offset, int alignment) -
addField
protected final int addField(int size, int align) -
addField
-
addField
-
addField
-
at
-
arrayBegin
protected final void arrayBegin()Starts an array construction session -
arrayEnd
protected final void arrayEnd()Ends an array construction session -
array
Creates an array ofMemberinstances.- Type Parameters:
T- The type of theMembersubclass to create.- Parameters:
array- the array to store the instances in- Returns:
- the array that was passed in
-
inner
-
function
-
function
protected final <T> StructLayout.Function<T> function(Class<T> closureClass, StructLayout.Offset offset)
-