# Interface FailableDoubleUnaryOperator<E extends Throwable>

Type Parameters:
  `E` - The kind of thrown exception or error.

public interface FailableDoubleUnaryOperator<E extends Throwable>
A functional interface like `DoubleUnaryOperator` that declares a `Throwable`.

Since:
  3.11

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final FailableDoubleUnaryOperator`
  `NOP`
  NOP singleton

- ## Method Summary

  Modifier and Type
  Method
  Description
  `default FailableDoubleUnaryOperator<E>`
  `andThen(FailableDoubleUnaryOperator<E> after)`
  Returns a composed `FailableDoubleUnaryOperator` like `DoubleUnaryOperator.andThen(DoubleUnaryOperator)`.
  `double`
  `applyAsDouble(double operand)`
  Applies this operator to the given operand.
  `default FailableDoubleUnaryOperator<E>`
  `compose(FailableDoubleUnaryOperator<E> before)`
  Returns a composed `FailableDoubleUnaryOperator` like `DoubleUnaryOperator.compose(DoubleUnaryOperator)`.
  `static <E extends Throwable>
  FailableDoubleUnaryOperator<E>`
  `identity()`
  Returns a unary operator that always returns its input argument.
  `static <E extends Throwable>
  FailableDoubleUnaryOperator<E>`
  `nop()`
  Gets the NOP singleton.

- ## Field Details

  - ### NOP

    static final FailableDoubleUnaryOperator NOP
    NOP singleton

- ## Method Details

  - ### identity

    static <E extends Throwable> FailableDoubleUnaryOperator<E> identity()
    Returns a unary operator that always returns its input argument.
    Type Parameters:
      `E` - The kind of thrown exception or error.
    Returns:
      a unary operator that always returns its input argument

  - ### nop

    static <E extends Throwable> FailableDoubleUnaryOperator<E> nop()
    Gets the NOP singleton.
    Type Parameters:
      `E` - The kind of thrown exception or error.
    Returns:
      The NOP singleton.

  - ### andThen

    default FailableDoubleUnaryOperator<E> andThen(FailableDoubleUnaryOperator<E> after)
    Returns a composed `FailableDoubleUnaryOperator` like `DoubleUnaryOperator.andThen(DoubleUnaryOperator)`.
    Parameters:
      `after` - the operator to apply after this one.
    Returns:
      a composed `FailableDoubleUnaryOperator` like `DoubleUnaryOperator.andThen(DoubleUnaryOperator)`.
    Throws:
      `NullPointerException` - if after is null.
    See Also:
      - `compose(FailableDoubleUnaryOperator)`

  - ### applyAsDouble

    double applyAsDouble(double operand) throws E
    Applies this operator to the given operand.
    Parameters:
      `operand` - the operand
    Returns:
      the operator result
    Throws:
      `E` - Thrown when a consumer fails.

  - ### compose

    default FailableDoubleUnaryOperator<E> compose(FailableDoubleUnaryOperator<E> before)
    Returns a composed `FailableDoubleUnaryOperator` like `DoubleUnaryOperator.compose(DoubleUnaryOperator)`.
    Parameters:
      `before` - the operator to apply before this one.
    Returns:
      a composed `FailableDoubleUnaryOperator` like `DoubleUnaryOperator.compose(DoubleUnaryOperator)`.
    Throws:
      `NullPointerException` - if before is null.
    See Also:
      - `andThen(FailableDoubleUnaryOperator)`