1 package prefuse.data.expression; 2 3 import java.util.Iterator ; 4 5 import prefuse.data.Tuple; 6 7 12 public class XorPredicate extends CompositePredicate { 13 14 18 public XorPredicate() { 19 } 20 21 25 public XorPredicate(Predicate p1) { 26 add(p1); 27 } 28 29 34 public XorPredicate(Predicate p1, Predicate p2) { 35 super(p1, p2); 36 } 37 38 41 public boolean getBoolean(Tuple t) { 42 if ( m_clauses.size() == 0 ) 43 return false; 44 45 boolean val = false; 46 Iterator iter = m_clauses.iterator(); 47 if ( iter.hasNext() ) { 48 val = ((Predicate)iter.next()).getBoolean(t); 49 } 50 while ( iter.hasNext() ) { 51 val ^= ((Predicate)iter.next()).getBoolean(t); 52 } 53 return val; 54 } 55 56 59 public String toString() { 60 return ( size() == 0 ? "FALSE" : toString("XOR") ); 61 } 62 63 } | Popular Tags |