org.apache.commons.functor.core.composite
Class Conditional

java.lang.Object
  extended by org.apache.commons.functor.core.composite.Conditional

public final class Conditional
extends Object

Utility methods for creating conditional functors.

Version:
$Revision: 1166380 $ $Date: 2011-09-07 22:18:14 +0200 (Wed, 07 Sep 2011) $
Author:
Rodney Waldhoff

Constructor Summary
Conditional()
          Conditional instances should NOT be constructed in standard programming.
 
Method Summary
static
<L,R,T> BinaryFunction<L,R,T>
function(BinaryPredicate<? super L,? super R> q, BinaryFunction<? super L,? super R,? extends T> r, BinaryFunction<? super L,? super R,? extends T> s)
          Create a conditional BinaryFunction.
static
<T> Function<T>
function(Predicate q, Function<? extends T> r, Function<? extends T> s)
          Create a conditional Function.
static
<A,T> UnaryFunction<A,T>
function(UnaryPredicate<? super A> q, UnaryFunction<? super A,? extends T> r, UnaryFunction<? super A,? extends T> s)
          Create a conditional UnaryFunction.
static
<L,R> BinaryPredicate<L,R>
predicate(BinaryPredicate<? super L,? super R> q, BinaryPredicate<? super L,? super R> r, BinaryPredicate<? super L,? super R> s)
          Create a conditional BinaryPredicate.
static Predicate predicate(Predicate q, Predicate r, Predicate s)
          Create a conditional Predicate.
static
<A> UnaryPredicate<A>
predicate(UnaryPredicate<? super A> q, UnaryPredicate<? super A> r, UnaryPredicate<? super A> s)
          Create a conditional UnaryPredicate.
static
<L,R> BinaryProcedure<L,R>
procedure(BinaryPredicate<? super L,? super R> q, BinaryProcedure<? super L,? super R> r)
          Create a guarded BinaryProcedure.
static
<L,R> BinaryProcedure<L,R>
procedure(BinaryPredicate<? super L,? super R> q, BinaryProcedure<? super L,? super R> r, BinaryProcedure<? super L,? super R> s)
          Create a conditional BinaryProcedure.
static Procedure procedure(Predicate q, Procedure r)
          Create a guarded Procedure.
static Procedure procedure(Predicate q, Procedure r, Procedure s)
          Create a conditional Procedure.
static
<A> UnaryProcedure<A>
procedure(UnaryPredicate<? super A> q, UnaryProcedure<? super A> r)
          Create a guarded UnaryProcedure.
static
<A> UnaryProcedure<A>
procedure(UnaryPredicate<? super A> q, UnaryProcedure<? super A> r, UnaryProcedure<? super A> s)
          Create a conditional UnaryProcedure.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Conditional

public Conditional()

Conditional instances should NOT be constructed in standard programming. Instead, the methods of the class should be invoked statically.

This constructor is public to permit tools that require a JavaBean instance to operate.

Method Detail

procedure

public static Procedure procedure(Predicate q,
                                  Procedure r)
Create a guarded Procedure.

Parameters:
q - if
r - then
Returns:
Procedure

procedure

public static Procedure procedure(Predicate q,
                                  Procedure r,
                                  Procedure s)
Create a conditional Procedure.

Parameters:
q - if
r - then
s - else
Returns:
Procedure

function

public static <T> Function<T> function(Predicate q,
                                       Function<? extends T> r,
                                       Function<? extends T> s)
Create a conditional Function.

Parameters:
q - if
r - then
s - else
Returns:
Function

predicate

public static Predicate predicate(Predicate q,
                                  Predicate r,
                                  Predicate s)
Create a conditional Predicate.

Parameters:
q - if
r - then
s - else
Returns:
Predicate

procedure

public static <A> UnaryProcedure<A> procedure(UnaryPredicate<? super A> q,
                                              UnaryProcedure<? super A> r)
Create a guarded UnaryProcedure.

Parameters:
q - if
r - then
Returns:
UnaryProcedure

procedure

public static <A> UnaryProcedure<A> procedure(UnaryPredicate<? super A> q,
                                              UnaryProcedure<? super A> r,
                                              UnaryProcedure<? super A> s)
Create a conditional UnaryProcedure.

Parameters:
q - if
r - then
s - else
Returns:
UnaryProcedure

function

public static <A,T> UnaryFunction<A,T> function(UnaryPredicate<? super A> q,
                                                UnaryFunction<? super A,? extends T> r,
                                                UnaryFunction<? super A,? extends T> s)
Create a conditional UnaryFunction.

Parameters:
q - if
r - then
s - else
Returns:
UnaryFunction

predicate

public static <A> UnaryPredicate<A> predicate(UnaryPredicate<? super A> q,
                                              UnaryPredicate<? super A> r,
                                              UnaryPredicate<? super A> s)
Create a conditional UnaryPredicate.

Parameters:
q - if
r - then
s - else
Returns:
UnaryPredicate

procedure

public static <L,R> BinaryProcedure<L,R> procedure(BinaryPredicate<? super L,? super R> q,
                                                   BinaryProcedure<? super L,? super R> r)
Create a guarded BinaryProcedure.

Parameters:
q - if
r - then
Returns:
BinaryProcedure

procedure

public static <L,R> BinaryProcedure<L,R> procedure(BinaryPredicate<? super L,? super R> q,
                                                   BinaryProcedure<? super L,? super R> r,
                                                   BinaryProcedure<? super L,? super R> s)
Create a conditional BinaryProcedure.

Parameters:
q - if
r - then
s - else
Returns:
BinaryProcedure

function

public static <L,R,T> BinaryFunction<L,R,T> function(BinaryPredicate<? super L,? super R> q,
                                                     BinaryFunction<? super L,? super R,? extends T> r,
                                                     BinaryFunction<? super L,? super R,? extends T> s)
Create a conditional BinaryFunction.

Parameters:
q - if
r - then
s - else
Returns:
BinaryFunction

predicate

public static <L,R> BinaryPredicate<L,R> predicate(BinaryPredicate<? super L,? super R> q,
                                                   BinaryPredicate<? super L,? super R> r,
                                                   BinaryPredicate<? super L,? super R> s)
Create a conditional BinaryPredicate.

Parameters:
q - if
r - then
s - else
Returns:
BinaryPredicate


Copyright © 2003-2011 The Apache Software Foundation. All Rights Reserved.