commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mben...@apache.org
Subject svn commit: r982054 - in /commons/sandbox/functor/trunk/src: main/java/org/apache/commons/functor/adapter/ test/java/org/apache/commons/functor/adapter/
Date Tue, 03 Aug 2010 22:28:47 GMT
Author: mbenson
Date: Tue Aug  3 22:28:46 2010
New Revision: 982054

URL: http://svn.apache.org/viewvc?rev=982054&view=rev
Log:
move constructor-only type parameters from class to constructor

Modified:
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundFunction.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundPredicate.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundProcedure.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundFunction.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundPredicate.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundProcedure.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundFunction.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundPredicate.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundProcedure.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundFunction.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundPredicate.java
    commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundProcedure.java
    commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundFunction.java
    commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundPredicate.java
    commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundProcedure.java
    commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundFunction.java
    commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundPredicate.java
    commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundProcedure.java

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundFunction.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundFunction.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundFunction.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundFunction.java Tue Aug  3 22:28:46 2010
@@ -39,87 +39,36 @@ import org.apache.commons.functor.UnaryF
  * @author Rodney Waldhoff
  */
 public final class BoundFunction<T> implements Function<T>, Serializable {
-    private class Helper<A> implements Function<T>, Serializable {
-        /** The {@link UnaryFunction UnaryFunction} I'm wrapping. */
-        private UnaryFunction<? super A, ? extends T> function;
-
-        /** The parameter to pass to that function. */
-        private A arg = null;
-
-        private Helper(UnaryFunction<? super A, ? extends T> function, A arg) {
-            this.function = function;
-            this.arg = arg;
-        }
-
-        /**
-         * {@inheritDoc}
-         */
-        public T evaluate() {
-            return function.evaluate(arg);
-        }
-
-        /**
-         * {@inheritDoc}
-         */
-        @Override
-        public boolean equals(Object obj) {
-            return obj == this || obj instanceof Helper && equals((Helper<?>) obj);
-        }
-
-        private boolean equals(Helper<?> that) {
-            if (that != null && that.function.equals(this.function)) {
-                return that.arg == this.arg || that.arg != null && that.arg.equals(this.arg);
-            }
-            return false;
-        }
-
-        /**
-         * {@inheritDoc}
-         */
-        @Override
-        public int hashCode() {
-            int result = "BoundFunction$Helper".hashCode();
-            result <<= 2;
-            result |= function.hashCode();
-            result <<= 2;
-            return arg == null ? result : result | arg.hashCode();
-        }
-
-        /**
-         * {@inheritDoc}
-         */
-        @Override
-        public String toString() {
-            return function.toString() + "(" + arg + ")";
-        }
-    }
-
-    private Helper<?> helper;
+    private UnaryFunction<Object, ? extends T> function;
+    private Object arg;
 
     /**
-     * Create a new BoundFunction.
+     * Create a new BoundFunction instance.
+     * @param <A>
      * @param function the function to adapt
      * @param arg the constant argument to use
      */
+    @SuppressWarnings("unchecked")
     public <A> BoundFunction(UnaryFunction<? super A, ? extends T> function, A arg) {
         if (function == null) {
             throw new IllegalArgumentException("UnaryFunction argument was null");
         }
-        this.helper = new Helper<A>(function, arg);
+        this.function = (UnaryFunction<Object, ? extends T>) function;
+        this.arg = arg;
     }
 
     /**
      * {@inheritDoc}
      */
     public T evaluate() {
-        return helper.evaluate();
+        return function.evaluate(arg);
     }
 
     /**
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof BoundFunction && equals((BoundFunction<?>) that));
+        return that == this || (that instanceof BoundFunction<?> && equals((BoundFunction<?>) that));
     }
 
     /**
@@ -128,21 +77,31 @@ public final class BoundFunction<T> impl
      * @return boolean
      */
     public boolean equals(BoundFunction<?> that) {
-        return null != that && that.helper.equals(this.helper);
+        if (that == null) {
+            return false;
+        }
+        if (!(that.function.equals(this.function))) {
+            return false;
+        }
+        return that.arg == this.arg || that.arg != null && that.arg.equals(this.arg);
     }
 
     /**
      * {@inheritDoc}
      */
     public int hashCode() {
-        return "BoundFunction".hashCode() << 8 | helper.hashCode();
+        int result = "BoundFunction".hashCode();
+        result <<= 2;
+        result |= function.hashCode();
+        result <<= 2;
+        return arg == null ? result : result | arg.hashCode();
     }
 
     /**
      * {@inheritDoc}
      */
     public String toString() {
-        return "BoundFunction<" + helper + ">";
+        return "BoundFunction<" + function.toString() + "(" + arg + ")>";
     }
 
     /**
@@ -153,8 +112,8 @@ public final class BoundFunction<T> impl
      * argument.
      * When the given <code>UnaryFunction</code> is <code>null</code>,
      * returns <code>null</code>.
-     * @param <A>
-     * @param <T>
+     * @param <A> input type
+     * @param <T> result type
      * @param function the possibly-<code>null</code>
      *        {@link UnaryFunction UnaryFunction} to adapt
      * @param arg the object to bind as a constant argument

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundPredicate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundPredicate.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundPredicate.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundPredicate.java Tue Aug  3 22:28:46 2010
@@ -45,7 +45,8 @@ public final class BoundPredicate implem
     private Object param;
 
     /**
-     * Create a new BoundPredicate.
+     * Create a new BoundPredicate instance.
+     * @param <A> input type
      * @param predicate the predicate to adapt
      * @param arg the constant argument to use
      */
@@ -116,6 +117,7 @@ public final class BoundPredicate implem
      * When the given <code>UnaryPredicate</code> is <code>null</code>,
      * returns <code>null</code>.
      *
+     * @param <A> input type
      * @param predicate the possibly-<code>null</code>
      *        {@link UnaryPredicate UnaryPredicate} to adapt
      * @param arg the object to bind as a constant argument

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundProcedure.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundProcedure.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundProcedure.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/BoundProcedure.java Tue Aug  3 22:28:46 2010
@@ -45,7 +45,8 @@ public final class BoundProcedure implem
     private Object param;
 
     /**
-     * Create a new BoundProcedure.
+     * Create a new BoundProcedure instance.
+     * @param <A> arg type
      * @param procedure the procedure to adapt
      * @param arg the constant argument to use
      */
@@ -115,6 +116,7 @@ public final class BoundProcedure implem
      * When the given <code>UnaryProcedure</code> is <code>null</code>,
      * returns <code>null</code>.
      *
+     * @param <A> arg type
      * @param procedure the possibly-<code>null</code>
      *        {@link UnaryProcedure UnaryProcedure} to adapt
      * @param arg the object to bind as a constant argument

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundFunction.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundFunction.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundFunction.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundFunction.java Tue Aug  3 22:28:46 2010
@@ -38,13 +38,13 @@ import org.apache.commons.functor.Functi
  * @version $Revision$ $Date$
  * @author Matt Benson
  */
-public final class FullyBoundFunction<L, R, T> implements Function<T>, Serializable {
+public final class FullyBoundFunction<T> implements Function<T>, Serializable {
     /** The {@link BinaryFunction BinaryFunction} I'm wrapping. */
-    private BinaryFunction<? super L, ? super R, ? extends T> function;
+    private BinaryFunction<Object, Object, ? extends T> function;
     /** The left parameter to pass to that function. */
-    private L left;
+    private Object left;
     /** The right parameter to pass to that function. */
-    private R right;
+    private Object right;
 
     /**
      * Create a new FullyBoundFunction.
@@ -52,11 +52,12 @@ public final class FullyBoundFunction<L,
      * @param left the left side argument to use
      * @param right the right side argument to use
      */
-    public FullyBoundFunction(BinaryFunction<? super L, ? super R, ? extends T> function, L left, R right) {
+    @SuppressWarnings("unchecked")
+    public <L, R> FullyBoundFunction(BinaryFunction<? super L, ? super R, ? extends T> function, L left, R right) {
         if (function == null) {
             throw new IllegalArgumentException("BinaryFunction argument was null");
         }
-        this.function = function;
+        this.function = (BinaryFunction<Object, Object, T>) function;
         this.left = left;
         this.right = right;
     }
@@ -72,7 +73,7 @@ public final class FullyBoundFunction<L,
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof FullyBoundFunction && equals((FullyBoundFunction<?, ?, ?>) that));
+        return that == this || (that instanceof FullyBoundFunction<?> && equals((FullyBoundFunction<?>) that));
     }
 
     /**
@@ -80,7 +81,7 @@ public final class FullyBoundFunction<L,
      * @param that FullyBoundFunction to test
      * @return boolean
      */
-    public boolean equals(FullyBoundFunction<?, ?, ?> that) {
+    public boolean equals(FullyBoundFunction<?> that) {
         return null != that && (null == function ? null == that.function : function.equals(that.function))
                 && (null == left ? null == that.left : left.equals(that.left))
                 && (null == right ? null == that.right : right.equals(that.right));
@@ -115,14 +116,17 @@ public final class FullyBoundFunction<L,
 
     /**
      * Adapt a BinaryFunction as a Function.
+     * @param <L> left type
+     * @param <R> right type
+     * @param <T> result type
      * @param function to adapt
      * @param left left side argument
      * @param right right side argument
      * @return FullyBoundFunction
      */
-    public static <L, R, T> FullyBoundFunction<L, R, T> bind(
+    public static <L, R, T> FullyBoundFunction<T> bind(
             BinaryFunction<? super L, ? super R, ? extends T> function, L left, R right) {
-        return null == function ? null : new FullyBoundFunction<L, R, T>(function, left, right);
+        return null == function ? null : new FullyBoundFunction<T>(function, left, right);
     }
 
 }

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundPredicate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundPredicate.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundPredicate.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundPredicate.java Tue Aug  3 22:28:46 2010
@@ -20,7 +20,6 @@ import java.io.Serializable;
 
 import org.apache.commons.functor.BinaryPredicate;
 import org.apache.commons.functor.Predicate;
-import org.apache.commons.functor.UnaryPredicate;
 
 /**
  * Adapts a
@@ -39,26 +38,29 @@ import org.apache.commons.functor.UnaryP
  * @version $Revision$ $Date$
  * @author Matt Benson
  */
-public final class FullyBoundPredicate<L, R> implements Predicate, Serializable {
+public final class FullyBoundPredicate implements Predicate, Serializable {
 
     /** The {@link BinaryPredicate BinaryPredicate} I'm wrapping. */
-    private BinaryPredicate<? super L, ? super R> predicate;
+    private BinaryPredicate<Object, Object> predicate;
     /** The left parameter to pass to that predicate. */
-    private L left;
+    private Object left;
     /** The right parameter to pass to that predicate. */
-    private R right;
+    private Object right;
 
     /**
-     * Create a new FullyBoundPredicate.
+     * Create a new FullyBoundPredicate instance.
+     * @param <L> left type
+     * @param <R> right type
      * @param predicate the predicate to adapt
      * @param left the left argument to use
      * @param right the right argument to use
      */
-    public FullyBoundPredicate(BinaryPredicate<? super L, ? super R> predicate, L left, R right) {
+    @SuppressWarnings("unchecked")
+    public <L, R> FullyBoundPredicate(BinaryPredicate<? super L, ? super R> predicate, L left, R right) {
         if (predicate == null) {
             throw new IllegalArgumentException("BinaryPredicate argument was null");
         }
-        this.predicate = predicate;
+        this.predicate = (BinaryPredicate<Object, Object>) predicate;
         this.left = left;
         this.right = right;
     }
@@ -74,7 +76,7 @@ public final class FullyBoundPredicate<L
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof FullyBoundPredicate && equals((FullyBoundPredicate<?, ?>) that));
+        return that == this || (that instanceof FullyBoundPredicate && equals((FullyBoundPredicate) that));
     }
 
     /**
@@ -82,7 +84,7 @@ public final class FullyBoundPredicate<L
      * @param that FullyBoundPredicate to test
      * @return boolean
      */
-    public boolean equals(FullyBoundPredicate<?, ?> that) {
+    public boolean equals(FullyBoundPredicate that) {
         return null != that && (null == predicate ? null == that.predicate : predicate.equals(that.predicate))
                 && (null == left ? null == that.left : left.equals(that.left))
                 && (null == right ? null == that.right : right.equals(that.right));
@@ -118,11 +120,14 @@ public final class FullyBoundPredicate<L
     /**
      * Adapt a BinaryPredicate to the Predicate interface.
      * @param predicate to adapt
+     * @param <L> left type
+     * @param <R> right type
      * @param left L argument to always send as the left operand to the wrapped function
      * @param right R argument to always send as the right operand to the wrapped function
      * @return FullyBoundPredicate
      */
-    public static <L, R> FullyBoundPredicate<L, R> bind(BinaryPredicate<? super L, ? super R> predicate, L left, R right) {
-        return null == predicate ? null : new FullyBoundPredicate<L, R>(predicate, left, right);
+    public static <L, R> FullyBoundPredicate bind(
+            BinaryPredicate<? super L, ? super R> predicate, L left, R right) {
+        return null == predicate ? null : new FullyBoundPredicate(predicate, left, right);
     }
 }

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundProcedure.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundProcedure.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundProcedure.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/FullyBoundProcedure.java Tue Aug  3 22:28:46 2010
@@ -38,25 +38,28 @@ import org.apache.commons.functor.Proced
  * @version $Revision$ $Date$
  * @author Matt Benson
  */
-public final class FullyBoundProcedure<L, R> implements Procedure, Serializable {
+public final class FullyBoundProcedure implements Procedure, Serializable {
     /** The {@link BinaryProcedure BinaryProcedure} I'm wrapping. */
-    private BinaryProcedure<? super L, ? super R> procedure;
+    private BinaryProcedure<Object, Object> procedure;
     /** The left parameter to pass to that procedure. */
-    private L left;
+    private Object left;
     /** The right parameter to pass to that procedure. */
-    private R right;
+    private Object right;
 
     /**
-     * Create a new FullyBoundProcedure.
+     * Create a new FullyBoundProcedure instance.
+     * @param <L> left type
+     * @param <R> right type
      * @param procedure the procedure to adapt
      * @param left the left argument to use
      * @param right the right argument to use
      */
-    public FullyBoundProcedure(BinaryProcedure<? super L, ? super R> procedure, L left, R right) {
+    @SuppressWarnings("unchecked")
+    public <L, R> FullyBoundProcedure(BinaryProcedure<? super L, ? super R> procedure, L left, R right) {
         if (procedure == null) {
             throw new IllegalArgumentException("BinaryProcedure argument was null");
         }
-        this.procedure = procedure;
+        this.procedure = (BinaryProcedure<Object, Object>) procedure;
         this.left = left;
         this.right = right;
     }
@@ -72,7 +75,7 @@ public final class FullyBoundProcedure<L
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof FullyBoundProcedure && equals((FullyBoundProcedure<?, ?>) that));
+        return that == this || (that instanceof FullyBoundProcedure && equals((FullyBoundProcedure) that));
     }
 
     /**
@@ -80,7 +83,7 @@ public final class FullyBoundProcedure<L
      * @param that FullyBoundProcedure to test
      * @return boolean
      */
-    public boolean equals(FullyBoundProcedure<?, ?> that) {
+    public boolean equals(FullyBoundProcedure that) {
         return null != that && (null == procedure ? null == that.procedure : procedure.equals(that.procedure))
                 && (null == left ? null == that.left : left.equals(that.left))
                 && (null == right ? null == that.right : right.equals(that.right));
@@ -90,7 +93,7 @@ public final class FullyBoundProcedure<L
      * {@inheritDoc}
      */
     public int hashCode() {
-        int hash = "LeftBoundProcedure".hashCode();
+        int hash = "FullyBoundProcedure".hashCode();
         if (null != procedure) {
             hash <<= 2;
             hash ^= procedure.hashCode();
@@ -115,13 +118,15 @@ public final class FullyBoundProcedure<L
 
     /**
      * Adapt a BinaryProcedure to the Procedure interface.
+     * @param <L> left type
+     * @param <R> right type
      * @param procedure to adapt
      * @param left left side argument
      * @param right right side argument
      * @return FullyBoundProcedure
      */
-    public static <L, R> FullyBoundProcedure<L, R> bind(BinaryProcedure<? super L, ? super R> procedure, L left, R right) {
-        return null == procedure ? null : new FullyBoundProcedure<L, R>(procedure, left, right);
+    public static <L, R> FullyBoundProcedure bind(BinaryProcedure<? super L, ? super R> procedure, L left, R right) {
+        return null == procedure ? null : new FullyBoundProcedure(procedure, left, right);
     }
 
 }

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundFunction.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundFunction.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundFunction.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundFunction.java Tue Aug  3 22:28:46 2010
@@ -38,29 +38,31 @@ import org.apache.commons.functor.UnaryF
  * @version $Revision$ $Date$
  * @author Rodney Waldhoff
  */
-public final class LeftBoundFunction<L, R, T> implements UnaryFunction<R, T>, Serializable {
+public final class LeftBoundFunction<A, T> implements UnaryFunction<A, T>, Serializable {
     /** The {@link BinaryFunction BinaryFunction} I'm wrapping. */
-    private BinaryFunction<? super L, ? super R, ? extends T> function;
+    private BinaryFunction<Object, ? super A, ? extends T> function;
     /** The parameter to pass to that function. */
-    private L param = null;
+    private Object param = null;
 
     /**
-     * Create a new LeftBoundFunction.
+     * Create a new LeftBoundFunction instance.
+     * @param <L> bound arg type
      * @param function the function to adapt
      * @param arg the constant argument to use
      */
-    public LeftBoundFunction(BinaryFunction<? super L, ? super R, ? extends T> function, L arg) {
+    @SuppressWarnings("unchecked")
+    public <L> LeftBoundFunction(BinaryFunction<? super L, ? super A, ? extends T> function, L arg) {
         if (function == null) {
             throw new IllegalArgumentException("BinaryFunction argument was null");
         }
-        this.function = function;
+        this.function = (BinaryFunction<Object, ? super A, ? extends T>) function;
         this.param = arg;
     }
 
     /**
      * {@inheritDoc}
      */
-    public T evaluate(R obj) {
+    public T evaluate(A obj) {
         return function.evaluate(param, obj);
     }
 
@@ -68,7 +70,7 @@ public final class LeftBoundFunction<L, 
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof LeftBoundFunction && equals((LeftBoundFunction<?, ?, ?>) that));
+        return that == this || (that instanceof LeftBoundFunction<?, ?> && equals((LeftBoundFunction<?, ?>) that));
     }
 
     /**
@@ -76,7 +78,7 @@ public final class LeftBoundFunction<L, 
      * @param that LeftBoundFunction to test
      * @return boolean
      */
-    public boolean equals(LeftBoundFunction<?, ?, ?> that) {
+    public boolean equals(LeftBoundFunction<?, ?> that) {
         return null != that
                 && (null == function ? null == that.function : function.equals(that.function))
                 && (null == param ? null == that.param : param.equals(that.param));
@@ -107,12 +109,16 @@ public final class LeftBoundFunction<L, 
 
     /**
      * Adapt a BinaryFunction as a UnaryFunction.
+     * @param <L> left type
+     * @param <R> right type
+     * @param <T> result type
      * @param function to adapt
      * @param arg left side argument
      * @return LeftBoundFunction
      */
-    public static <L, R, T> LeftBoundFunction<L, R, T> bind(BinaryFunction<? super L, ? super R, ? extends T> function, L arg) {
-        return null == function ? null : new LeftBoundFunction<L, R, T>(function, arg);
+    public static <L, R, T> LeftBoundFunction<R, T> bind(
+            BinaryFunction<? super L, ? super R, ? extends T> function, L arg) {
+        return null == function ? null : new LeftBoundFunction<R, T>(function, arg);
     }
 
 }

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundPredicate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundPredicate.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundPredicate.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundPredicate.java Tue Aug  3 22:28:46 2010
@@ -38,30 +38,31 @@ import org.apache.commons.functor.UnaryP
  * @version $Revision$ $Date$
  * @author Rodney Waldhoff
  */
-public final class LeftBoundPredicate<L, R> implements UnaryPredicate<R>, Serializable {
+public final class LeftBoundPredicate<A> implements UnaryPredicate<A>, Serializable {
 
     /** The {@link BinaryPredicate BinaryPredicate} I'm wrapping. */
-    private BinaryPredicate<? super L, ? super R> predicate;
+    private BinaryPredicate<Object, ? super A> predicate;
     /** The parameter to pass to that predicate. */
-    private L param;
+    private Object param;
 
     /**
      * Create a new LeftBoundPredicate.
      * @param predicate the predicate to adapt
      * @param arg the constant argument to use
      */
-    public LeftBoundPredicate(BinaryPredicate<? super L, ? super R> predicate, L arg) {
+    @SuppressWarnings("unchecked")
+    public <L> LeftBoundPredicate(BinaryPredicate<? super L, ? super A> predicate, L arg) {
         if (predicate == null) {
             throw new IllegalArgumentException("BinaryPredicate argument was null");
         }
-        this.predicate = predicate;
+        this.predicate = (BinaryPredicate<Object, ? super A>) predicate;
         this.param = arg;
     }
 
     /**
      * {@inheritDoc}
      */
-    public boolean test(R obj) {
+    public boolean test(A obj) {
         return predicate.test(param, obj);
     }
 
@@ -69,7 +70,7 @@ public final class LeftBoundPredicate<L,
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof LeftBoundPredicate && equals((LeftBoundPredicate<?, ?>) that));
+        return that == this || (that instanceof LeftBoundPredicate<?> && equals((LeftBoundPredicate<?>) that));
     }
 
     /**
@@ -77,7 +78,7 @@ public final class LeftBoundPredicate<L,
      * @param that LeftBoundPredicate to test
      * @return boolean
      */
-    public boolean equals(LeftBoundPredicate<?, ?> that) {
+    public boolean equals(LeftBoundPredicate<?> that) {
         return null != that
                 && (null == predicate ? null == that.predicate : predicate.equals(that.predicate))
                 && (null == param ? null == that.param : param.equals(that.param));
@@ -112,7 +113,7 @@ public final class LeftBoundPredicate<L,
      * @param arg Object argument to always send as the left operand to the wrapped function
      * @return LeftBoundPredicate
      */
-    public static <L, R> LeftBoundPredicate<L, R> bind(BinaryPredicate<? super L, ? super R> predicate, L arg) {
-        return null == predicate ? null : new LeftBoundPredicate<L, R>(predicate, arg);
+    public static <L, R> LeftBoundPredicate<R> bind(BinaryPredicate<? super L, ? super R> predicate, L arg) {
+        return null == predicate ? null : new LeftBoundPredicate<R>(predicate, arg);
     }
 }

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundProcedure.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundProcedure.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundProcedure.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/LeftBoundProcedure.java Tue Aug  3 22:28:46 2010
@@ -38,29 +38,30 @@ import org.apache.commons.functor.UnaryP
  * @version $Revision$ $Date$
  * @author Rodney Waldhoff
  */
-public final class LeftBoundProcedure<L, R> implements UnaryProcedure<R>, Serializable {
+public final class LeftBoundProcedure<A> implements UnaryProcedure<A>, Serializable {
     /** The {@link BinaryProcedure BinaryProcedure} I'm wrapping. */
-    private BinaryProcedure<? super L, ? super R> procedure;
+    private BinaryProcedure<Object, ? super A> procedure;
     /** The parameter to pass to that procedure. */
-    private L param;
+    private Object param;
 
     /**
      * Create a new LeftBoundProcedure.
      * @param procedure the procedure to adapt
      * @param arg the constant argument to use
      */
-    public LeftBoundProcedure(BinaryProcedure<? super L, ? super R> procedure, L arg) {
+    @SuppressWarnings("unchecked")
+    public <L> LeftBoundProcedure(BinaryProcedure<? super L, ? super A> procedure, L arg) {
         if (procedure == null) {
             throw new IllegalArgumentException("BinaryProcedure argument was null");
         }
-        this.procedure = procedure;
+        this.procedure = (BinaryProcedure<Object, ? super A>) procedure;
         this.param = arg;
     }
 
     /**
      * {@inheritDoc}
      */
-    public void run(R obj) {
+    public void run(A obj) {
         procedure.run(param, obj);
     }
 
@@ -68,7 +69,7 @@ public final class LeftBoundProcedure<L,
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof LeftBoundProcedure && equals((LeftBoundProcedure<?, ?>) that));
+        return that == this || (that instanceof LeftBoundProcedure<?> && equals((LeftBoundProcedure<?>) that));
     }
 
     /**
@@ -76,11 +77,10 @@ public final class LeftBoundProcedure<L,
      * @param that LeftBoundProcedure to test
      * @return boolean
      */
-    public boolean equals(LeftBoundProcedure<?, ?> that) {
+    public boolean equals(LeftBoundProcedure<?> that) {
         return null != that
                 && (null == procedure ? null == that.procedure : procedure.equals(that.procedure))
                 && (null == param ? null == that.param : param.equals(that.param));
-
     }
 
     /**
@@ -108,12 +108,14 @@ public final class LeftBoundProcedure<L,
 
     /**
      * Get a UnaryProcedure from <code>procedure</code>.
+     * @param <L> left type
+     * @param <R> right type
      * @param procedure to adapt
      * @param arg left side argument
-     * @return LeftBoundProcedure
+     * @return LeftBoundProcedure<R>
      */
-    public static <L, R> LeftBoundProcedure<L, R> bind(BinaryProcedure<? super L, ? super R> procedure, L arg) {
-        return null == procedure ? null : new LeftBoundProcedure<L, R>(procedure, arg);
+    public static <L, R> LeftBoundProcedure<R> bind(BinaryProcedure<? super L, ? super R> procedure, L arg) {
+        return null == procedure ? null : new LeftBoundProcedure<R>(procedure, arg);
     }
 
 }

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundFunction.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundFunction.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundFunction.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundFunction.java Tue Aug  3 22:28:46 2010
@@ -67,7 +67,7 @@ public final class RightBoundFunction<L,
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof RightBoundFunction && equals((RightBoundFunction<?, ?, ?>) that));
+        return that == this || (that instanceof RightBoundFunction<?, ?, ?> && equals((RightBoundFunction<?, ?, ?>) that));
     }
 
     /**

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundPredicate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundPredicate.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundPredicate.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundPredicate.java Tue Aug  3 22:28:46 2010
@@ -68,7 +68,7 @@ public final class RightBoundPredicate<L
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof RightBoundPredicate && equals((RightBoundPredicate<?, ?>) that));
+        return that == this || (that instanceof RightBoundPredicate<?, ?> && equals((RightBoundPredicate<?, ?>) that));
     }
 
     /**

Modified: commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundProcedure.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundProcedure.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundProcedure.java (original)
+++ commons/sandbox/functor/trunk/src/main/java/org/apache/commons/functor/adapter/RightBoundProcedure.java Tue Aug  3 22:28:46 2010
@@ -68,7 +68,7 @@ public final class RightBoundProcedure<L
      * {@inheritDoc}
      */
     public boolean equals(Object that) {
-        return that == this || (that instanceof RightBoundProcedure && equals((RightBoundProcedure<?, ?>) that));
+        return that == this || (that instanceof RightBoundProcedure<?, ?> && equals((RightBoundProcedure<?, ?>) that));
     }
 
     /**

Modified: commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundFunction.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundFunction.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundFunction.java (original)
+++ commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundFunction.java Tue Aug  3 22:28:46 2010
@@ -46,7 +46,7 @@ public class TestFullyBoundFunction exte
     // ------------------------------------------------------------------------
 
     protected Object makeFunctor() {
-        return new FullyBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION, null, "xyzzy");
+        return new FullyBoundFunction<Object>(RightIdentity.FUNCTION, null, "xyzzy");
     }
 
     // Lifecycle
@@ -64,17 +64,17 @@ public class TestFullyBoundFunction exte
     // ------------------------------------------------------------------------
 
     public void testEvaluate() throws Exception {
-        Function<Object> f = new FullyBoundFunction<String, Object, Object>(RightIdentity.FUNCTION, null, "foo");
+        Function<Object> f = new FullyBoundFunction<Object>(RightIdentity.FUNCTION, null, "foo");
         assertEquals("foo", f.evaluate());
     }
 
     public void testEquals() throws Exception {
-        Function<Object> f = new FullyBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION, null, "xyzzy");
+        Function<Object> f = new FullyBoundFunction<Object>(RightIdentity.FUNCTION, null, "xyzzy");
         assertEquals(f, f);
-        assertObjectsAreEqual(f, new FullyBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION, null, "xyzzy"));
+        assertObjectsAreEqual(f, new FullyBoundFunction<Object>(RightIdentity.FUNCTION, null, "xyzzy"));
         assertObjectsAreNotEqual(f, Constant.of("xyzzy"));
-        assertObjectsAreNotEqual(f, new FullyBoundFunction<Object, Object, Object>(LeftIdentity.FUNCTION, null, "xyzzy"));
-        assertObjectsAreNotEqual(f, new FullyBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION, null, "bar"));
+        assertObjectsAreNotEqual(f, new FullyBoundFunction<Object>(LeftIdentity.FUNCTION, null, "xyzzy"));
+        assertObjectsAreNotEqual(f, new FullyBoundFunction<Object>(RightIdentity.FUNCTION, null, "bar"));
     }
 
     public void testAdaptNull() throws Exception {

Modified: commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundPredicate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundPredicate.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundPredicate.java (original)
+++ commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundPredicate.java Tue Aug  3 22:28:46 2010
@@ -45,7 +45,7 @@ public class TestFullyBoundPredicate ext
     // ------------------------------------------------------------------------
 
     protected Object makeFunctor() {
-        return new FullyBoundPredicate<Object, Object>(Constant.TRUE, null, "xyzzy");
+        return new FullyBoundPredicate(Constant.TRUE, null, "xyzzy");
     }
 
     // Lifecycle
@@ -63,19 +63,20 @@ public class TestFullyBoundPredicate ext
     // ------------------------------------------------------------------------
 
     public void testTest() throws Exception {
-        Predicate p = new FullyBoundPredicate<Object, Boolean>(
-                new BinaryFunctionBinaryPredicate<Object, Boolean>(RightIdentity.<Object, Boolean> function()), "foo", Boolean.TRUE);
+        Predicate p = new FullyBoundPredicate(
+                new BinaryFunctionBinaryPredicate<Object, Boolean>(RightIdentity.<Object, Boolean> function()), "foo",
+                Boolean.TRUE);
         assertEquals(true, p.test());
     }
 
     public void testEquals() throws Exception {
-        Predicate p = new FullyBoundPredicate<Object, Boolean>(Constant.TRUE, "xyzzy", null);
+        Predicate p = new FullyBoundPredicate(Constant.TRUE, "xyzzy", null);
         assertEquals(p, p);
-        assertObjectsAreEqual(p, new FullyBoundPredicate<Object, Boolean>(Constant.TRUE, "xyzzy", null));
+        assertObjectsAreEqual(p, new FullyBoundPredicate(Constant.TRUE, "xyzzy", null));
         assertObjectsAreNotEqual(p, Constant.TRUE);
-        assertObjectsAreNotEqual(p, new FullyBoundPredicate<Object, Boolean>(Constant.FALSE, "xyzzy", null));
-        assertObjectsAreNotEqual(p, new FullyBoundPredicate<Object, Boolean>(Constant.TRUE, "foo", null));
-        assertObjectsAreNotEqual(p, new FullyBoundPredicate<Object, String>(Constant.TRUE, null, "xyzzy"));
+        assertObjectsAreNotEqual(p, new FullyBoundPredicate(Constant.FALSE, "xyzzy", null));
+        assertObjectsAreNotEqual(p, new FullyBoundPredicate(Constant.TRUE, "foo", null));
+        assertObjectsAreNotEqual(p, new FullyBoundPredicate(Constant.TRUE, null, "xyzzy"));
     }
 
     public void testAdaptNull() throws Exception {

Modified: commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundProcedure.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundProcedure.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundProcedure.java (original)
+++ commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestFullyBoundProcedure.java Tue Aug  3 22:28:46 2010
@@ -45,7 +45,7 @@ public class TestFullyBoundProcedure ext
     // ------------------------------------------------------------------------
 
     protected Object makeFunctor() {
-        return new FullyBoundProcedure<Object, Object>(NoOp.INSTANCE, "xyzzy", null);
+        return new FullyBoundProcedure(NoOp.INSTANCE, "xyzzy", null);
     }
 
     // Lifecycle
@@ -63,20 +63,20 @@ public class TestFullyBoundProcedure ext
     // ------------------------------------------------------------------------
 
     public void testRun() throws Exception {
-        Procedure p = new FullyBoundProcedure<Object, Object>(new BinaryFunctionBinaryProcedure<Object, Object>(
+        Procedure p = new FullyBoundProcedure(new BinaryFunctionBinaryProcedure<Object, Object>(
                 RightIdentity.FUNCTION), "foo", null);
         p.run();
     }
 
     public void testEquals() throws Exception {
-        Procedure f = new FullyBoundProcedure<Object, Object>(NoOp.INSTANCE, "xyzzy", null);
+        Procedure f = new FullyBoundProcedure(NoOp.INSTANCE, "xyzzy", null);
         assertEquals(f, f);
-        assertObjectsAreEqual(f, new FullyBoundProcedure<Object, Object>(NoOp.INSTANCE, "xyzzy", null));
+        assertObjectsAreEqual(f, new FullyBoundProcedure(NoOp.INSTANCE, "xyzzy", null));
         assertObjectsAreNotEqual(f, new NoOp());
-        assertObjectsAreNotEqual(f, new FullyBoundProcedure<Object, Object>(
+        assertObjectsAreNotEqual(f, new FullyBoundProcedure(
                 new BinaryFunctionBinaryProcedure<Object, Object>(RightIdentity.FUNCTION), "xyzzy", null));
-        assertObjectsAreNotEqual(f, new FullyBoundProcedure<Object, Object>(NoOp.INSTANCE, "foo", null));
-        assertObjectsAreNotEqual(f, new FullyBoundProcedure<Object, Object>(NoOp.INSTANCE, null, null));
+        assertObjectsAreNotEqual(f, new FullyBoundProcedure(NoOp.INSTANCE, "foo", null));
+        assertObjectsAreNotEqual(f, new FullyBoundProcedure(NoOp.INSTANCE, null, null));
     }
 
     public void testAdaptNull() throws Exception {

Modified: commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundFunction.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundFunction.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundFunction.java (original)
+++ commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundFunction.java Tue Aug  3 22:28:46 2010
@@ -46,7 +46,7 @@ public class TestLeftBoundFunction exten
     // ------------------------------------------------------------------------
 
     protected Object makeFunctor() {
-        return new LeftBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION,"xyzzy");
+        return new LeftBoundFunction<Object, Object>(RightIdentity.FUNCTION,"xyzzy");
     }
 
     // Lifecycle
@@ -64,17 +64,17 @@ public class TestLeftBoundFunction exten
     // ------------------------------------------------------------------------
 
     public void testEvaluate() throws Exception {
-        UnaryFunction<Object, Object> f = new LeftBoundFunction<String, Object, Object>(RightIdentity.FUNCTION,"foo");
+        UnaryFunction<Object, Object> f = new LeftBoundFunction<Object, Object>(RightIdentity.FUNCTION,"foo");
         assertEquals("xyzzy",f.evaluate("xyzzy"));
     }
 
     public void testEquals() throws Exception {
-        UnaryFunction<Object, Object> f = new LeftBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION,"xyzzy");
+        UnaryFunction<Object, Object> f = new LeftBoundFunction<Object, Object>(RightIdentity.FUNCTION,"xyzzy");
         assertEquals(f,f);
-        assertObjectsAreEqual(f,new LeftBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION,"xyzzy"));
+        assertObjectsAreEqual(f,new LeftBoundFunction<Object, Object>(RightIdentity.FUNCTION,"xyzzy"));
         assertObjectsAreNotEqual(f,Constant.of("xyzzy"));
-        assertObjectsAreNotEqual(f,new LeftBoundFunction<Object, Object, Object>(LeftIdentity.FUNCTION,"xyzzy"));
-        assertObjectsAreNotEqual(f,new LeftBoundFunction<Object, Object, Object>(RightIdentity.FUNCTION,"bar"));
+        assertObjectsAreNotEqual(f,new LeftBoundFunction<Object, Object>(LeftIdentity.FUNCTION,"xyzzy"));
+        assertObjectsAreNotEqual(f,new LeftBoundFunction<Object, Object>(RightIdentity.FUNCTION,"bar"));
     }
 
     public void testAdaptNull() throws Exception {

Modified: commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundPredicate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundPredicate.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundPredicate.java (original)
+++ commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundPredicate.java Tue Aug  3 22:28:46 2010
@@ -45,7 +45,7 @@ public class TestLeftBoundPredicate exte
     // ------------------------------------------------------------------------
 
     protected Object makeFunctor() {
-        return new LeftBoundPredicate<Object, Object>(Constant.TRUE,"xyzzy");
+        return new LeftBoundPredicate<Object>(Constant.TRUE,"xyzzy");
     }
 
     // Lifecycle
@@ -63,20 +63,20 @@ public class TestLeftBoundPredicate exte
     // ------------------------------------------------------------------------
 
     public void testTest() throws Exception {
-        UnaryPredicate<Boolean> p = new LeftBoundPredicate<Object, Boolean>(
+        UnaryPredicate<Boolean> p = new LeftBoundPredicate<Boolean>(
                 new BinaryFunctionBinaryPredicate<Object, Boolean>(RightIdentity.<Object, Boolean> function()), "foo");
         assertEquals(true,p.test(Boolean.TRUE));
         assertEquals(false,p.test(Boolean.FALSE));
     }
 
     public void testEquals() throws Exception {
-        UnaryPredicate<Boolean> p = new LeftBoundPredicate<Object, Boolean>(Constant.TRUE,"xyzzy");
+        UnaryPredicate<Boolean> p = new LeftBoundPredicate<Boolean>(Constant.TRUE,"xyzzy");
         assertEquals(p,p);
-        assertObjectsAreEqual(p,new LeftBoundPredicate<Object, Boolean>(Constant.TRUE,"xyzzy"));
+        assertObjectsAreEqual(p,new LeftBoundPredicate<Boolean>(Constant.TRUE,"xyzzy"));
         assertObjectsAreNotEqual(p,Constant.TRUE);
-        assertObjectsAreNotEqual(p,new LeftBoundPredicate<Object, Boolean>(Constant.FALSE,"xyzzy"));
-        assertObjectsAreNotEqual(p,new LeftBoundPredicate<Object, Boolean>(Constant.TRUE,"foo"));
-        assertObjectsAreNotEqual(p,new LeftBoundPredicate<Object, Boolean>(Constant.TRUE,null));
+        assertObjectsAreNotEqual(p,new LeftBoundPredicate<Boolean>(Constant.FALSE,"xyzzy"));
+        assertObjectsAreNotEqual(p,new LeftBoundPredicate<Boolean>(Constant.TRUE,"foo"));
+        assertObjectsAreNotEqual(p,new LeftBoundPredicate<Boolean>(Constant.TRUE,null));
     }
 
     public void testAdaptNull() throws Exception {

Modified: commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundProcedure.java
URL: http://svn.apache.org/viewvc/commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundProcedure.java?rev=982054&r1=982053&r2=982054&view=diff
==============================================================================
--- commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundProcedure.java (original)
+++ commons/sandbox/functor/trunk/src/test/java/org/apache/commons/functor/adapter/TestLeftBoundProcedure.java Tue Aug  3 22:28:46 2010
@@ -45,7 +45,7 @@ public class TestLeftBoundProcedure exte
     // ------------------------------------------------------------------------
 
     protected Object makeFunctor() {
-        return new LeftBoundProcedure<Object, Object>(NoOp.INSTANCE,"xyzzy");
+        return new LeftBoundProcedure<Object>(NoOp.INSTANCE,"xyzzy");
     }
 
     // Lifecycle
@@ -63,21 +63,21 @@ public class TestLeftBoundProcedure exte
     // ------------------------------------------------------------------------
 
     public void testRun() throws Exception {
-        UnaryProcedure<Object> p = new LeftBoundProcedure<Object, Object>(
+        UnaryProcedure<Object> p = new LeftBoundProcedure<Object>(
                 new BinaryFunctionBinaryProcedure<Object, Object>(RightIdentity.FUNCTION), "foo");
         p.run(Boolean.TRUE);
         p.run(Boolean.FALSE);
     }
 
     public void testEquals() throws Exception {
-        UnaryProcedure<Object> f = new LeftBoundProcedure<Object, Object>(NoOp.INSTANCE, "xyzzy");
+        UnaryProcedure<Object> f = new LeftBoundProcedure<Object>(NoOp.INSTANCE, "xyzzy");
         assertEquals(f, f);
-        assertObjectsAreEqual(f, new LeftBoundProcedure<Object, Object>(NoOp.INSTANCE, "xyzzy"));
+        assertObjectsAreEqual(f, new LeftBoundProcedure<Object>(NoOp.INSTANCE, "xyzzy"));
         assertObjectsAreNotEqual(f, new NoOp());
-        assertObjectsAreNotEqual(f, new LeftBoundProcedure<Object, Object>(
+        assertObjectsAreNotEqual(f, new LeftBoundProcedure<Object>(
                 new BinaryFunctionBinaryProcedure<Object, Object>(RightIdentity.FUNCTION), "xyzzy"));
-        assertObjectsAreNotEqual(f, new LeftBoundProcedure<Object, Object>(NoOp.INSTANCE, "foo"));
-        assertObjectsAreNotEqual(f, new LeftBoundProcedure<Object, Object>(NoOp.INSTANCE, null));
+        assertObjectsAreNotEqual(f, new LeftBoundProcedure<Object>(NoOp.INSTANCE, "foo"));
+        assertObjectsAreNotEqual(f, new LeftBoundProcedure<Object>(NoOp.INSTANCE, null));
     }
 
     public void testAdaptNull() throws Exception {



Mime
View raw message