|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.functor.core.algorithm.RecursiveEvaluation
public class RecursiveEvaluation
Tail recursion for functions
. If the Function
returns another function of type functionType
, that function
is executed. Functions are executed until a non function value or a
function of a type other than that expected is returned.
Constructor Summary | |
---|---|
RecursiveEvaluation(Function<?> function)
Create a new RecursiveEvaluation. |
|
RecursiveEvaluation(Function<?> function,
Class<?> functionType)
Create a new RecursiveEvaluation. |
Method Summary | |
---|---|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this functor. |
Object |
evaluate()
Evaluate this function. |
int |
hashCode()
Returns a hash code for this functor adhering to the general Object.hashCode contract. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.commons.functor.Functor |
---|
toString |
Constructor Detail |
---|
public RecursiveEvaluation(Function<?> function)
function
.
function
- initial, potentially recursive Functionpublic RecursiveEvaluation(Function<?> function, Class<?> functionType)
function
- initial, potentially recursive FunctionfunctionType
- as long as result is an instance, keep processing.Method Detail |
---|
public final Object evaluate()
evaluate
in interface Function<Object>
public final boolean equals(Object obj)
Object.equals
contract.
Additionally, this method can return
true only if the specified Object implements
the same functor interface and is known to produce the same
results and/or side-effects for the same arguments (if any).
While implementators are strongly encouraged to override
the default Object implementation of this method,
note that the default Object implementation
does in fact adhere to the functor equals
contract.
equals
in interface Functor
equals
in class Object
obj
- the object to compare this functor to
true
iff the given object implements
this functor interface, and is known to produce the same
results and/or side-effects for the same arguments
(if any).Functor.hashCode()
public int hashCode()
Object.hashCode
contract.
Implementators are strongly encouraged but not
strictly required to override the default Object
implementation of this method.
hashCode
in interface Functor
hashCode
in class Object
Functor.equals(java.lang.Object)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |