info.javelot.functionalj
Interface Function3<R,P1,P2,P3>

Type Parameters:
R - the type of the result returned by the function.
P1 - the type of the function's first parameter.
P2 - the type of the function's second parameter.
P3 - the type of the function's third parameter.
All Known Implementing Classes:
Function3Impl

public interface Function3<R,P1,P2,P3>

Interface that represents a function of 3 parameters.

Author:
Copyright © 2006 Frederic Daoud

Method Summary
 Function2<R,P2,P3> bind(P1 p_param1)
          Binds the first parameter of this function of 3 parameters to return a new function of 2 parameters.
 Function1<R,P3> bind(P1 p_param1, P2 p_param2)
          Binds the first 2 parameters of this function of 3 parameters to return a new function of 1 parameter.
 Function0<R> bind(P1 p_param1, P2 p_param2, P3 p_param3)
          Binds the 3 parameters of this function of 3 parameters to return a new function of no parameters.
 Function2<R,P1,P3> bind2(P2 p_param2)
          Binds the second parameter of this function of 3 parameters to return a new function of 2 parameters.
 Function2<R,P1,P2> bind3(P3 p_param3)
          Binds the third parameter of this function of 3 parameters to return a new function of 2 parameters.
 R call(P1 p_param1, P2 p_param2, P3 p_param3)
          Calls the function on the given parameters and returns the result.
 

Method Detail

call

R call(P1 p_param1,
       P2 p_param2,
       P3 p_param3)
       throws FunctionException
Calls the function on the given parameters and returns the result.

Parameters:
p_param1 - the first parameter to the function.
p_param2 - the second parameter to the function.
p_param3 - the third parameter to the function.
Returns:
the result of the function call.
Throws:
FunctionException - thrown if an exception occurs during the function call.

bind

Function2<R,P2,P3> bind(P1 p_param1)
Binds the first parameter of this function of 3 parameters to return a new function of 2 parameters.

Parameters:
p_param1 - the parameter to bind to the first parameter of the function.
Returns:
a new function of 2 parameters.

bind

Function1<R,P3> bind(P1 p_param1,
                     P2 p_param2)
Binds the first 2 parameters of this function of 3 parameters to return a new function of 1 parameter.

Parameters:
p_param1 - the parameter to bind to the first parameter of the function.
p_param2 - the parameter to bind to the second parameter of the function.
Returns:
a new function of 1 parameter.

bind

Function0<R> bind(P1 p_param1,
                  P2 p_param2,
                  P3 p_param3)
Binds the 3 parameters of this function of 3 parameters to return a new function of no parameters.

Parameters:
p_param1 - the parameter to bind to the first parameter of the function.
p_param2 - the parameter to bind to the second parameter of the function.
p_param3 - the parameter to bind to the third parameter of the function.
Returns:
a new function of no parameters.

bind2

Function2<R,P1,P3> bind2(P2 p_param2)
Binds the second parameter of this function of 3 parameters to return a new function of 2 parameters.

Parameters:
p_param2 - the parameter to bind to the second parameter of the function.
Returns:
a new function of 2 parameters.

bind3

Function2<R,P1,P2> bind3(P3 p_param3)
Binds the third parameter of this function of 3 parameters to return a new function of 2 parameters.

Parameters:
p_param3 - the parameter to bind to the third parameter of the function.
Returns:
a new function of 2 parameters.