net.sf.jga.fn.adaptor
Class ConstantBinary<T1,T2,V>

java.lang.Object
  extended by net.sf.jga.fn.Functor<R>
      extended by net.sf.jga.fn.BinaryFunctor<T1,T2,V>
          extended by net.sf.jga.fn.adaptor.ConstantBinary<T1,T2,V>
All Implemented Interfaces:
java.io.Serializable, Visitable

public class ConstantBinary<T1,T2,V>
extends BinaryFunctor<T1,T2,V>

Functor that returns the constant value given at construction.

To Serialize a ConstantBinary, the generic parameter V must be serializable.

Copyright © 2003-2005 David A. Hall

Author:
David A. Hall
See Also:
Serialized Form

Nested Class Summary
static interface ConstantBinary.Visitor
          Interface for classes that may interpret a ConstantBinary functor.
 
Constructor Summary
ConstantBinary(V val)
          Builds a Constant functor for the given value.
 
Method Summary
 void accept(Visitor v)
          Calls the Visitor's visit(Constant) method, if it implements the nested Visitor interface.
 V fn(T1 unused, T2 ignored)
          Given two arguments, ignores both and returns the constant value given at construction.
 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

ConstantBinary

public ConstantBinary(V val)
Builds a Constant functor for the given value. The value may be null: in that case, evaluating the functor will return null.

Method Detail

fn

public V fn(T1 unused,
            T2 ignored)
Given two arguments, ignores both and returns the constant value given at construction. Neither argument will be evaluated in any way by this functor.

Specified by:
fn in class BinaryFunctor<T1,T2,V>
Returns:
the constant value given at construction

accept

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

Specified by:
accept in interface Visitable
Overrides:
accept in class Functor<V>

toString

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


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