Module jdk.incubator.foreign
Package jdk.incubator.foreign

# Interface Addressable

All Known Subinterfaces:
  `CLinker.VaList`, `LibraryLookup.Symbol`, `MemoryAddress`, `MemorySegment`

public interface Addressable
Represents a type which is addressable. An addressable type is one which can be projected down to a memory address instance (see `address()`). Examples of addressable types are `MemorySegment`, `MemoryAddress`, `LibraryLookup.Symbol` and `CLinker.VaList`.

API Note:
  In the future, if the Java language permits, `Addressable` may become a `sealed` interface, which would prohibit subclassing except by explicitly permitted types, such as `MemorySegment`, `MemoryAddress`, `LibraryLookup.Symbol` and `CLinker.VaList`.
Implementation Requirements:
  Implementations of this interface value-based.

## Method Summary

Modifier and Type
Method
Description
`MemoryAddress`
`address()`
Map this object into a `MemoryAddress` instance.

## Method Details

### address

MemoryAddress address()
Map this object into a `MemoryAddress` instance.

Returns:
  the `MemoryAddress` instance associated with this object.