# 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.lang.invoke
The `java.lang.invoke` package provides low-level primitives for interacting with the Java Virtual Machine.
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.

- Classes in java.lang.foreign used by java.lang.foreign
  Class
  Description
  Addressable
  Preview.
  An object that may be projected down to a memory addressPREVIEW.
  FunctionDescriptor
  Preview.
  A function descriptor is made up of zero or more argument layouts and zero or one return layout.
  GroupLayout
  Preview.
  A compound layout that aggregates multiple member layouts.
  Linker
  Preview.
  A linker provides access to foreign functions from Java code, and access to Java code from foreign functions.
  MemoryAddress
  Preview.
  A memory address models a reference into a memory location.
  MemoryLayout
  Preview.
  A memory layout can be used to describe the contents of a memory segment.
  MemoryLayout.PathElement
  Preview.
  An element in a layout path.
  MemorySegment
  Preview.
  A memory segment models a contiguous region of memory.
  MemorySession
  Preview.
  A memory session manages the lifecycle of one or more resources.
  SegmentAllocator
  Preview.
  An object that may be used to allocate memory segmentsPREVIEW.
  SequenceLayout
  Preview.
  A compound layout that denotes a repetition of a given element layout.
  SymbolLookup
  Preview.
  A symbol lookup is an object that may be used to retrieve the address of a symbol in one or more libraries.
  VaList
  Preview.
  A variable argument list, similar in functionality to a C `va_list`.
  VaList.Builder
  Preview.
  A builder used to construct a variable argument listPREVIEW.
  ValueLayout
  Preview.
  A value layout.
  ValueLayout.OfAddress
  Preview.
  A value layout whose carrier is `MemoryAddress.class`.
  ValueLayout.OfBoolean
  Preview.
  A value layout whose carrier is `boolean.class`.
  ValueLayout.OfByte
  Preview.
  A value layout whose carrier is `byte.class`.
  ValueLayout.OfChar
  Preview.
  A value layout whose carrier is `char.class`.
  ValueLayout.OfDouble
  Preview.
  A value layout whose carrier is `double.class`.
  ValueLayout.OfFloat
  Preview.
  A value layout whose carrier is `float.class`.
  ValueLayout.OfInt
  Preview.
  A value layout whose carrier is `int.class`.
  ValueLayout.OfLong
  Preview.
  A value layout whose carrier is `long.class`.
  ValueLayout.OfShort
  Preview.
  A value layout whose carrier is `short.class`.
- Classes in java.lang.foreign used by java.lang.invoke
  Class
  Description
  ValueLayout
  Preview.
  A value layout.
- Classes in java.lang.foreign used by java.nio.channels
  Class
  Description
  MemorySegment
  Preview.
  A memory segment models a contiguous region of memory.
  MemorySession
  Preview.
  A memory session manages the lifecycle of one or more resources.