# Uses of Package
java.lang.foreign

Packages that use java.lang.foreign
Package
Description
java.lang.foreign
Provides low-level access to memory and functions outside the Java runtime.
java.nio.channels
Defines channels, which represent connections to entities that are capable of performing I/O operations, such as files and sockets; defines selectors, for multiplexed, non-blocking I/O operations.
jdk.incubator.vector
Incubating Feature. Will be removed in a future release.

Classes in java.lang.foreign used by java.lang.foreign
Class
Description
AddressLayout
A value layout used to model the address of some region of memory.
Arena
An arena controls the lifecycle of native memory segments, providing both flexible allocation and timely deallocation.
FunctionDescriptor
A function descriptor models the signature of a foreign function.
GroupLayout
A compound layout that is an aggregation of multiple, heterogeneous member layouts.
Linker
A linker provides access to foreign functions from Java code, and access to Java code from foreign functions.
Linker.Option
A linker option is used to provide additional parameters to a linkage request.
MemoryLayout
A memory layout describes the contents of a memory segment.
MemoryLayout.PathElement
An element in a layout path.
MemorySegment
A memory segment provides access to a contiguous region of memory.
MemorySegment.Scope
A scope models the lifetime of all the memory segments associated with it.
PaddingLayout
A padding layout.
SegmentAllocator
An object that may be used to allocate memory segments.
SequenceLayout
A compound layout that denotes a homogeneous repetition of a given element layout.
StructLayout
A group layout whose member layouts are laid out one after the other.
SymbolLookup
A symbol lookup retrieves the address of a symbol in one or more libraries.
UnionLayout
A group layout whose member layouts are laid out at the same starting offset.
ValueLayout
A layout that models values of basic data types.
ValueLayout.OfBoolean
A value layout whose carrier is `boolean.class`.
ValueLayout.OfByte
A value layout whose carrier is `byte.class`.
ValueLayout.OfChar
A value layout whose carrier is `char.class`.
ValueLayout.OfDouble
A value layout whose carrier is `double.class`.
ValueLayout.OfFloat
A value layout whose carrier is `float.class`.
ValueLayout.OfInt
A value layout whose carrier is `int.class`.
ValueLayout.OfLong
A value layout whose carrier is `long.class`.
ValueLayout.OfShort
A value layout whose carrier is `short.class`.
Classes in java.lang.foreign used by java.nio.channels
Class
Description
Arena
An arena controls the lifecycle of native memory segments, providing both flexible allocation and timely deallocation.
MemorySegment
A memory segment provides access to a contiguous region of memory.
Classes in java.lang.foreign used by jdk.incubator.vector
Class
Description
MemorySegment
A memory segment provides access to a contiguous region of memory.