FindBugs™ 1.3.9

edu.umd.cs.findbugs.ba.jsr305
Enum FlowValue

java.lang.Object
  extended by java.lang.Enum<FlowValue>
      extended by edu.umd.cs.findbugs.ba.jsr305.FlowValue
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<FlowValue>

public enum FlowValue
extends java.lang.Enum<FlowValue>

Flow value type for type qualifier dataflow analysis.

Author:
David Hovemeyer

Enum Constant Summary
ALWAYS
           
NEVER
           
TOP
           
UNKNOWN
           
 
Method Summary
static boolean backwardsValueConflictsWithSource(FlowValue backwardsFlowValue, SourceSinkInfo source, TypeQualifierValue typeQualifierValue)
          Determine whether given backwards FlowValue conflicts with given source.
static FlowValue flowValueFromWhen(javax.annotation.meta.When when)
          Convert a When value to a FlowValue value.
 boolean isNo()
           
 boolean isUncertain()
           
 boolean isYes()
           
static FlowValue meet(FlowValue a, FlowValue b)
           
static FlowValue valueOf(java.lang.String name)
          Returns the enum constant of this type with the specified name.
static FlowValue[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
static boolean valuesConflict(FlowValue forward, FlowValue backward)
          Determine whether given flow values conflict.
 
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

TOP

public static final FlowValue TOP

ALWAYS

public static final FlowValue ALWAYS

NEVER

public static final FlowValue NEVER

UNKNOWN

public static final FlowValue UNKNOWN
Method Detail

values

public static FlowValue[] 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 (FlowValue c : FlowValue.values())
    System.out.println(c);

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

valueOf

public static FlowValue 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

isYes

public boolean isYes()

isUncertain

public boolean isUncertain()

isNo

public boolean isNo()

meet

public static final FlowValue meet(FlowValue a,
                                   FlowValue b)

valuesConflict

public static boolean valuesConflict(FlowValue forward,
                                     FlowValue backward)
Determine whether given flow values conflict.

Parameters:
forward - a forwards flow value
backward - a backwards flow value
Returns:
true if values conflict, false otherwise

flowValueFromWhen

public static FlowValue flowValueFromWhen(javax.annotation.meta.When when)
Convert a When value to a FlowValue value.

Parameters:
when - a When value
Returns:
the corresponding FlowValue

backwardsValueConflictsWithSource

public static boolean backwardsValueConflictsWithSource(FlowValue backwardsFlowValue,
                                                        SourceSinkInfo source,
                                                        TypeQualifierValue typeQualifierValue)
Determine whether given backwards FlowValue conflicts with given source.

Parameters:
backwardsFlowValue - a backwards FlowValue
source - SourceSinkInfo object representing a source reached by the backwards flow value
typeQualifierValue - TypeQualifierValue being checked
Returns:
true if backwards value conflicts with source, false if not

FindBugs™ 1.3.9

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.