edu.rice.cs.cunit.util
Class ILambda.Ternary.Bind3rd<R,P,Q,S>

java.lang.Object
  extended by edu.rice.cs.cunit.util.ILambda.Ternary.Bind3rd<R,P,Q,S>
All Implemented Interfaces:
ILambda.Binary<R,P,Q>
Direct Known Subclasses:
IPredicate.Ternary.Bind3rd
Enclosing interface:
ILambda.Ternary<R,P,Q,S>

public static class ILambda.Ternary.Bind3rd<R,P,Q,S>
extends java.lang.Object
implements ILambda.Binary<R,P,Q>

Binary decorator for a ternary lambda that binds a constant to its third parameter.


Nested Class Summary
 
Nested classes/interfaces inherited from interface edu.rice.cs.cunit.util.ILambda.Binary
ILambda.Binary.Bind1st<R,P,Q>, ILambda.Binary.Bind2nd<R,P,Q>, ILambda.Binary.Max<T extends java.lang.Comparable<T>>, ILambda.Binary.Min<T extends java.lang.Comparable<T>>, ILambda.Binary.NaryAdaptor<R,P>
 
Field Summary
private  S _constant
          The constant third argument.
private  ILambda.Ternary<R,P,Q,S> _decoree
          The ternary lambda that is decorated.
 
Constructor Summary
ILambda.Ternary.Bind3rd(ILambda.Ternary<R,P,Q,S> decoree, S constant)
          Create a new binary decorator for a ternary lambda, binding a constant to its third parameter.
 
Method Summary
 R apply(P param1, Q param2)
          Apply the binary decorator, i.e.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_constant

private S _constant
The constant third argument.


_decoree

private ILambda.Ternary<R,P,Q,S> _decoree
The ternary lambda that is decorated.

Constructor Detail

ILambda.Ternary.Bind3rd

public ILambda.Ternary.Bind3rd(ILambda.Ternary<R,P,Q,S> decoree,
                               S constant)
Create a new binary decorator for a ternary lambda, binding a constant to its third parameter.

Parameters:
decoree - ternary lambda
constant - constant for the ternary lambda's third parameter
Method Detail

apply

public R apply(P param1,
               Q param2)
Apply the binary decorator, i.e. apply the constant and the parameters to the ternary lambda.

Specified by:
apply in interface ILambda.Binary<R,P,Q>
Parameters:
param1 - argument for the ternary lambda's first parameter
param2 - argument for the ternary lambda's second parameter
Returns:
return value of the binary lambda