Uses of Interface jdk.dynalink.Operation (Java SE 13 & JDK 13 )
Description: use: module: jdk.dynalink, package: jdk.dynalink, interface: Operation

# Uses of Interface
jdk.dynalink.Operation

Packages that use Operation
Package | Description
--- | ---
jdk.dynalink | Contains interfaces and classes that are used to link an `invokedynamic` call site.

- ## Uses of Operation in jdk.dynalink

  Classes in jdk.dynalink that implement Operation
  Modifier and Type | Class | Description
  --- | --- | ---
  `class` | `NamedOperation` | Operation that associates a name with another operation.
  `class` | `NamespaceOperation` | Describes an operation that operates on at least one `Namespace` of an object.
  `class` | `StandardOperation` | Defines the standard dynamic operations.

  Methods in jdk.dynalink that return Operation
  Modifier and Type | Method | Description
  --- | --- | ---
  `Operation` | NamedOperation.`getBaseOperation()` | Returns the base operation of this named operation.
  `static Operation` | NamedOperation.`getBaseOperation​(Operation op)` | If the passed operation is a named operation, returns its `NamedOperation.getBaseOperation()`, otherwise returns the operation as is.
  `Operation` | NamespaceOperation.`getBaseOperation()` | Returns the base operation of this named operation.
  `static Operation` | NamespaceOperation.`getBaseOperation​(Operation op)` | If the passed operation is a namespace operation, returns its `NamespaceOperation.getBaseOperation()`, otherwise returns the operation as is.
  `Operation` | CallSiteDescriptor.`getOperation()` | Returns the operation at the call site.

  Methods in jdk.dynalink with parameters of type Operation
  Modifier and Type | Method | Description
  --- | --- | ---
  `CallSiteDescriptor` | CallSiteDescriptor.`changeOperation​(Operation newOperation)` | Finds or creates a call site descriptor that only differs in its operation from this descriptor.
  `protected CallSiteDescriptor` | CallSiteDescriptor.`changeOperationInternal​(Operation newOperation)` | Finds or creates a call site descriptor that only differs in its operation from this descriptor.
  `static boolean` | NamespaceOperation.`contains​(Operation op, Operation baseOperation, Namespace namespace)` | Returns true if the specified operation is a `NamespaceOperation` and its base operation is equal to the specified operation, and it contains the specified namespace.
  `static StandardNamespace` | StandardNamespace.`findFirst​(Operation op)` | If the passed in operation is a `NamespaceOperation`, or a `NamedOperation` wrapping a `NamespaceOperation`, then it returns the first (if any) `StandardNamespace` in its namespace list.
  `static Operation` | NamedOperation.`getBaseOperation​(Operation op)` | If the passed operation is a named operation, returns its `NamedOperation.getBaseOperation()`, otherwise returns the operation as is.
  `static Operation` | NamespaceOperation.`getBaseOperation​(Operation op)` | If the passed operation is a namespace operation, returns its `NamespaceOperation.getBaseOperation()`, otherwise returns the operation as is.
  `static Object` | NamedOperation.`getName​(Operation op)` | If the passed operation is a named operation, returns its `NamedOperation.getName()`, otherwise returns null.
  `static Namespace[]` | NamespaceOperation.`getNamespaces​(Operation op)` | If the passed operation is a namespace operation, returns its `NamespaceOperation.getNamespaces()`, otherwise returns an empty array.

  Constructors in jdk.dynalink with parameters of type Operation
  Constructor | Description
  --- | ---
  `CallSiteDescriptor​(MethodHandles.Lookup lookup, Operation operation, MethodType methodType)` | Creates a new call site descriptor.
  `NamedOperation​(Operation baseOperation, Object name)` | Creates a new named operation.
  `NamespaceOperation​(Operation baseOperation, Namespace... namespaces)` | Constructs a new namespace operation.