de.caff.generics.function

## Interface IntToByteFunction3

- Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

      @FunctionalInterface
      public interface IntToByteFunction3

  Function with three primitive integer arguments and a primitive byte result.
  Since:
    November 27, 2020
  Author:
    Rammi

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `byte` | `applyAsByte(int value1, int value2, int value3)` Apply this function to the given 2 arguments.
    `default IntToCharFunction3` | `asIntToCharFunction()` View this as a 2 `int` to `char` function which considers the byte values unsigned.
    `default IntToDoubleFunction3` | `asIntToDoubleFunction()` View this as a 2 `int` to `double` function.
    `default IntToIntFunction3` | `asIntToIntFunction()` View this as a 2 `int` to `int` function.
    `default IntToLongFunction3` | `asIntToLongFunction()` View this as a 2 `int` to `long` function.
    `default IntToShortFunction3` | `asIntToShortFunction()` View this as an `int` to `short` function.
    `default IntToDoubleFunction3` | `asIntToUnsignedDoubleFunction()` View this as a 2 `int` to unsigned `double` function.
    `default IntToIntFunction3` | `asIntToUnsignedIntFunction()` View this as a 2 `int` to unsigned `int` function.
    `default IntToLongFunction3` | `asIntToUnsignedLongFunction()` View this as a 2 `int` to unsigned `long` function.
    `default IntToShortFunction3` | `asIntToUnsignedShortFunction()` View this as a 2 `int` to unsigned `short` function.
    `default IntToByteFunction2` | `partial1(int value1)` View this function as one with 2 arguments using a fix first argument.
    `default IntToByteFunction2` | `partial2(int value2)` View this function as one with 2 arguments using a fix second argument.
    `default IntToByteFunction2` | `partial3(int value3)` View this function as one with 2 arguments using a fix third argument.

- - ### Method Detail

    - #### applyAsByte

          byte applyAsByte(int value1,
                           int value2,
                           int value3)

      Apply this function to the given 2 arguments.
      Parameters:
        `value1` - first argument
        `value2` - second argument
        `value3` - third argument
      Returns:
        the function result

    - #### partial1

          @NotNull
          default IntToByteFunction2 partial1(int value1)

      View this function as one with 2 arguments using a fix first argument.
      Parameters:
        `value1` - fix first argument
      Returns:
        function expecting the remaining 2 arguments in order

    - #### partial2

          @NotNull
          default IntToByteFunction2 partial2(int value2)

      View this function as one with 2 arguments using a fix second argument.
      Parameters:
        `value2` - fix second argument
      Returns:
        function expecting the remaining 2 arguments in order

    - #### partial3

          @NotNull
          default IntToByteFunction2 partial3(int value3)

      View this function as one with 2 arguments using a fix third argument.
      Parameters:
        `value3` - fix third argument
      Returns:
        function expecting the remaining 2 arguments in order

    - #### asIntToShortFunction

          @NotNull
          default IntToShortFunction3 asIntToShortFunction()

      View this as an `int` to `short` function.
      Returns:
        unary integer operator which will return values between `-128` to `127`

    - #### asIntToUnsignedShortFunction

          @NotNull
          default IntToShortFunction3 asIntToUnsignedShortFunction()

      View this as a 2 `int` to unsigned `short` function.
      Returns:
        unary integer operator which will return values between `0` to `255`

    - #### asIntToIntFunction

          @NotNull
          default IntToIntFunction3 asIntToIntFunction()

      View this as a 2 `int` to `int` function.
      Returns:
        unary integer operator which will return values between `-128` to `127`

    - #### asIntToUnsignedIntFunction

          @NotNull
          default IntToIntFunction3 asIntToUnsignedIntFunction()

      View this as a 2 `int` to unsigned `int` function.
      Returns:
        unary integer operator which will return values between `0` to `255`

    - #### asIntToLongFunction

          @NotNull
          default IntToLongFunction3 asIntToLongFunction()

      View this as a 2 `int` to `long` function.
      Returns:
        int to long function which will return values between `-128L` to `127L`

    - #### asIntToUnsignedLongFunction

          @NotNull
          default IntToLongFunction3 asIntToUnsignedLongFunction()

      View this as a 2 `int` to unsigned `long` function.
      Returns:
        unary integer operator which will return values between `0L` to `255L`

    - #### asIntToDoubleFunction

          @NotNull
          default IntToDoubleFunction3 asIntToDoubleFunction()

      View this as a 2 `int` to `double` function.
      Returns:
        int to double function which will return integral values between `-128.0` to `127.0`

    - #### asIntToUnsignedDoubleFunction

          @NotNull
          default IntToDoubleFunction3 asIntToUnsignedDoubleFunction()

      View this as a 2 `int` to unsigned `double` function.
      Returns:
        int to double function which will return integral values between `0.0` to `255.0`

    - #### asIntToCharFunction

          @NotNull
          default IntToCharFunction3 asIntToCharFunction()

      View this as a 2 `int` to `char` function which considers the byte values unsigned.
      Returns:
        int to char function whih will return values between `(char)0` and `(char)255`