edu.rice.cs.cunit.threadCheck
Enum Combine.Mode

java.lang.Object
  extended by java.lang.Enum<Combine.Mode>
      extended by edu.rice.cs.cunit.threadCheck.Combine.Mode
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<Combine.Mode>
Enclosing class:
Combine

public static enum Combine.Mode
extends java.lang.Enum<Combine.Mode>

Boolean operation used to combine the results of other predicates.


Enum Constant Summary
AND
          Combine results of predicates using AND.
IMPLIES
          Implication.
NOT
          Invert result of predicate result.
OR
          Combine results of predicates using OR.
XOR
          Results in TRUE when one and only one of the operands is TRUE.
 
Method Summary
static Combine.Mode valueOf(java.lang.String name)
          Returns the enum constant of this type with the specified name.
static Combine.Mode[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

AND

public static final Combine.Mode AND
Combine results of predicates using AND.


OR

public static final Combine.Mode OR
Combine results of predicates using OR.


XOR

public static final Combine.Mode XOR
Results in TRUE when one and only one of the operands is TRUE. It follows the true meaning of "exclusive or". (a XOR b XOR c) is therefore equivalent to (a AND (NOT b) AND (NOT c)) OR ((NOT a) AND b AND (NOT c)) OR ((NOT a) AND (NOT b) AND c)


NOT

public static final Combine.Mode NOT
Invert result of predicate result. This is intended to be applied to only one predicate annotation.


IMPLIES

public static final Combine.Mode IMPLIES
Implication. This is intended to be applied to exactly one array of two predicate annotation. It is necessary to have an array of two predicate annotations, because implication is defined only with two operands, and without the array, we would not be able to guarantee consistent ordering as required by the non-commutable implication operation.

Method Detail

values

public static Combine.Mode[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (Combine.Mode c : Combine.Mode.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static Combine.Mode valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
java.lang.NullPointerException - if the argument is null