Interface Function<VIN,​VOUT,​E extends Exception>

  • Type Parameters:
    VIN - The type of the function parameter, or Void if the function does not expect a parameter.
    VOUT - The type of the function result, or Void if the function does not return anything (i.e. it only has side-effects).
    E - The type of the exception thrown by the function, or NeverThrowsException if no exception is thrown by the function.
    All Known Implementing Classes:
    CloseSilentlyFunction, JsonValueTraverseFunction
    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 Function<VIN,​VOUT,​E extends Exception>
    A synchronous function which returns a result immediately.

    Exception handling: implementations which do not throw any exceptions should declare that they throw an exception of type NeverThrowsException.

    Example usage:

     public class IsPossiblePrime implements Function<String, Boolean, IllegalArgumentException> {
         public Boolean apply(String value) throws IllegalArgumentException {
             // Parse the parameter now and potentially immediately throw an
             // exception.
             final BigInteger possiblePrime = new BigInteger(value);
    
             // Determine if the parameter is a prime number.
             return possiblePrime.isProbablePrime(1000);
         }
     }
     
    See Also:
    AsyncFunction, NeverThrowsException
    • Method Detail

      • apply

        VOUT apply​(VIN value)
            throws E extends Exception
        Applies this function to the input parameter value and returns the result.
        Parameters:
        value - The input parameter.
        Returns:
        The result of applying this function to value.
        Throws:
        E - If this function cannot be applied to value.
        E extends Exception