net.sf.jga.fn.comparison
Class EqualTo<T>

java.lang.Object
  extended by net.sf.jga.fn.Functor<R>
      extended by net.sf.jga.fn.BinaryFunctor<T,T,java.lang.Boolean>
          extended by net.sf.jga.fn.comparison.Equality<T>
              extended by net.sf.jga.fn.comparison.EqualTo<T>
All Implemented Interfaces:
java.io.Serializable, Visitable

public class EqualTo<T>
extends Equality<T>

Binary Predicate that returns TRUE for object arguments x and y when x == y using the built-in equals() method or an optional Comparator given at construction. By default, this functor will not throw NullPointerException: it will return true if both runtime arguments are null but false if only one is null. If an optional comparator is used, then its implementation will determine if a NullPointerException is thrown when passed a null argument.

To serialize an Equal functor, the comparator passed at construction(if any) must be Serializable.

Copyright © 2002-2005 David A. Hall

Author:
David A. Hall
See Also:
Serialized Form

Nested Class Summary
static interface EqualTo.Visitor
          Interface for classes that may interpret an EqualTo predicate.
 
Constructor Summary
EqualTo()
          Builds an EqualTo that uses the built-in equals method.
EqualTo(java.util.Comparator<? super T> comp)
          Builds an EqualTo that uses the given comparator.
 
Method Summary
 void accept(Visitor v)
          Calls the Visitor's visit(EqualTo) method, if it implements the nested Visitor interface.
 java.lang.Boolean fn(T x, T y)
          Given arguments x and y, returns x.equals(y).
 java.util.Comparator<? super T> getComparator()
          Returns the comparator in use by this functor, if any.
 java.lang.String toString()
           
 
Methods inherited from class net.sf.jga.fn.BinaryFunctor
bind, bind0th, bind1st, bind2nd, bindNth, compose, compose, composeNth, distribute, eval, generate, generate1st, generate2nd, generateNth
 
Methods inherited from class net.sf.jga.fn.Functor
composeNth
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EqualTo

public EqualTo()
Builds an EqualTo that uses the built-in equals method.


EqualTo

public EqualTo(java.util.Comparator<? super T> comp)
Builds an EqualTo that uses the given comparator.

Method Detail

getComparator

public java.util.Comparator<? super T> getComparator()
Returns the comparator in use by this functor, if any.

Returns:
the comparator in use by this functor, if any.

fn

public java.lang.Boolean fn(T x,
                            T y)
Given arguments x and y, returns x.equals(y). Will not throw NullPointerException if either x or y are null: will return true if both x and y are null and false if either x or y are null.

Specified by:
fn in class BinaryFunctor<T,T,java.lang.Boolean>
Returns:
x.equals(y)

accept

public void accept(Visitor v)
Calls the Visitor's visit(EqualTo) method, if it implements the nested Visitor interface.

Specified by:
accept in interface Visitable
Overrides:
accept in class Functor<java.lang.Boolean>

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2002-2006 David A. Hall. All Rights Reserved.