Top Description Annotations Classes
module nativeimage

Package org.graalvm.nativeimage.c.struct


This package provides parts of the Java / C interface that are related to C structures.
Since
19.0

Annotation Summary

Modifier and TypeAnnotation and Description
public @interface
AllowNarrowingCast

Allows a method annotated with CField to have a value type that is narrower (smaller number of bits) than the C type.

public @interface
AllowWideningCast

Allows a method annotated with CField to have a value type that is wider (larger number of bits) than the C type.

public @interface
CBitfield

Denotes a method as a bitfield access of a C struct.

public @interface
CField

Denotes a method as a field access of a C struct.

public @interface
CFieldAddress

Denotes a method as a field address computation of a C struct.

public @interface
CFieldOffset

Denotes a method as a field offset access of a C struct.

public @interface
CPointerTo

Denotes Java interface that imports a C pointer type.

public @interface
CStruct

Denotes Java interface that imports a C struct.

public @interface
CTypedefOfInfo

Informational only.

public @interface
RawField

Denotes a method as a field access of a structured C memory.

public @interface
RawFieldAddress

Denotes a method as a field address computation of a RawStructure.

public @interface
RawFieldOffset

Denotes a method as a field offset access of a RawStructure.

public @interface
RawPointerTo

Denotes a Java interface that is a pointer to a RawStructure.

public @interface
RawStructure

Denotes Java interface that represents C memory, but without a C struct definition.

public @interface
UniqueLocationIdentity

A CField also annotated with this annotation gets a unique LocationIdentity assigned, i.e., reads and writes do not interfere with reads and writes to any other field and are optimized without regarding other fields.

Class Summary

Modifier and TypeClass and Description
public class
SizeOf

Contains static methods that provide access to the size of dereferenced SystemJava pointer types (i.e. the size of the data structure pointed-to by SystemJava pointer).