1 33 package net.sf.jga.fn.comparison; 34 35 import java.util.Comparator ; 36 import net.sf.jga.fn.BinaryPredicate; 37 import net.sf.jga.util.ComparableComparator; 38 39 56 57 public class LessEqual<T> extends BinaryPredicate<T,T> { 58 59 static final long serialVersionUID = -4317901638908328747L; 60 61 private Comparator <? super T> _comp; 63 64 68 public LessEqual(Comparator <? super T> comp) { 69 if (comp == null) { 70 throw new IllegalArgumentException ("Comparator may not be null"); 71 } 72 73 _comp = comp; 74 } 75 76 80 public Comparator <? super T> getComparator() { return _comp; } 81 82 84 90 91 public Boolean fn(T x, T y) { 92 return Boolean.valueOf(_comp.compare(x, y) <= 0); 93 } 94 95 99 public void accept(net.sf.jga.fn.Visitor v) { 100 if (v instanceof LessEqual.Visitor) 101 ((LessEqual.Visitor)v).visit(this); 102 else 103 v.visit(this); 104 } 105 106 108 public String toString() { 109 return "LessEqual"; 110 } 111 112 114 117 public interface Visitor extends net.sf.jga.fn.Visitor { 118 public void visit(LessEqual host); 119 } 120 121 126 127 static public class Comparable<T extends java.lang.Comparable <? super T>> 128 extends LessEqual<T> 129 { 130 static final long serialVersionUID = 2318301997226073587L; 131 public Comparable() { super(new ComparableComparator<T>()); } 132 } 133 } 134 135 | Popular Tags |