public abstract class FlowInfo {
public final static int REACHABLE = 0;
- public final static int UNREACHABLE = 1;
-
- public static final UnconditionalFlowInfo DEAD_END; // Represents a dead branch status of initialization
+
+ public final static int UNREACHABLE = 1;
+
+ public static final UnconditionalFlowInfo DEAD_END; // Represents a dead
+ // branch status of
+ // initialization
static {
DEAD_END = new UnconditionalFlowInfo();
DEAD_END.reachMode = UNREACHABLE;
}
+
abstract public FlowInfo addInitializationsFrom(FlowInfo otherInits);
abstract public FlowInfo addPotentialInitializationsFrom(FlowInfo otherInits);
return this;
}
- public boolean complainIfUnreachable(Statement statement, BlockScope scope, boolean didAlreadyComplain) {
+ public boolean complainIfUnreachable(Statement statement, BlockScope scope,
+ boolean didAlreadyComplain) {
// Report an error if necessary
return false;
}
- public static FlowInfo conditional(FlowInfo initsWhenTrue, FlowInfo initsWhenFalse){
+ public static FlowInfo conditional(FlowInfo initsWhenTrue,
+ FlowInfo initsWhenFalse) {
- // if (initsWhenTrue.equals(initsWhenFalse)) return initsWhenTrue; -- could optimize if #equals is defined
+ // if (initsWhenTrue.equals(initsWhenFalse)) return initsWhenTrue; --
+ // could optimize if #equals is defined
return new ConditionalFlowInfo(initsWhenTrue, initsWhenFalse);
}
/**
* Check status of definite assignment for a field.
*/
- abstract public boolean isDefinitelyAssigned(FieldBinding field);
+ abstract public boolean isDefinitelyAssigned(FieldBinding field);
/**
* Check status of definite assignment for a local.
*/
public abstract boolean isDefinitelyAssigned(LocalVariableBinding local);
- //abstract public int reachMode();
+ // abstract public int reachMode();
/**
* Check status of potential assignment for a field.
*/
- abstract public boolean isPotentiallyAssigned(FieldBinding field);
+ abstract public boolean isPotentiallyAssigned(FieldBinding field);
/**
* Check status of potential assignment for a local variable.
*/
- abstract public boolean isPotentiallyAssigned(LocalVariableBinding field);
+ abstract public boolean isPotentiallyAssigned(LocalVariableBinding field);
abstract public boolean isReachable();
-
+
/**
* Record a field got definitely assigned.
*/
abstract public FlowInfo setReachMode(int reachMode);
/**
- * Returns the receiver updated in the following way: <ul>
- * <li> intersection of definitely assigned variables,
+ * Returns the receiver updated in the following way:
+ * <ul>
+ * <li> intersection of definitely assigned variables,
* <li> union of potentially assigned variables.
* </ul>
*/
- abstract public UnconditionalFlowInfo mergedWith(UnconditionalFlowInfo otherInits);
+ abstract public UnconditionalFlowInfo mergedWith(
+ UnconditionalFlowInfo otherInits);
- public String toString(){
+ public String toString() {
- if (this == DEAD_END){
+ if (this == DEAD_END) {
return "FlowInfo.DEAD_END"; //$NON-NLS-1$
}
return super.toString();