aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java')
-rw-r--r--third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java87
1 files changed, 38 insertions, 49 deletions
diff --git a/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java b/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java
index c49357a3ff..99a8a525ec 100644
--- a/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java
+++ b/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/analysis/ConditionalTransferResult.java
@@ -1,19 +1,15 @@
package org.checkerframework.dataflow.analysis;
import java.util.Map;
-
import javax.lang.model.type.TypeMirror;
/**
- * Implementation of a {@link TransferResult} with two non-exceptional store;
- * one for the 'then' edge and one for 'else'. The result of
- * {@code getRegularStore} will be the least upper bound of the two underlying
- * stores.
+ * Implementation of a {@link TransferResult} with two non-exceptional store; one for the 'then'
+ * edge and one for 'else'. The result of {@code getRegularStore} will be the least upper bound of
+ * the two underlying stores.
*
* @author Stefan Heule
- *
- * @param <S>
- * The {@link Store} used to keep track of intermediate results.
+ * @param <S> the {@link Store} used to keep track of intermediate results
*/
public class ConditionalTransferResult<A extends AbstractValue<A>, S extends Store<S>>
extends TransferResult<A, S> {
@@ -27,25 +23,21 @@ public class ConditionalTransferResult<A extends AbstractValue<A>, S extends Sto
protected S elseStore;
/**
- * Create a {@code ConditionalTransferResult} with {@code thenStore} as the
- * resulting store if the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} evaluates to
- * {@code true} and {@code elseStore} otherwise.
- *
- * For the meaning of storeChanged, see
- * {@link org.checkerframework.dataflow.analysis.TransferResult#storeChanged}.
+ * Create a {@code ConditionalTransferResult} with {@code thenStore} as the resulting store if
+ * the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} evaluates to {@code
+ * true} and {@code elseStore} otherwise.
*
- * <p>
+ * <p>For the meaning of storeChanged, see {@link
+ * org.checkerframework.dataflow.analysis.TransferResult#storeChanged}.
*
- * <em>Exceptions</em>: If the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} throws an
- * exception, then it is assumed that no special handling is necessary and
- * the store before the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} will be passed along any
- * exceptional edge.
+ * <p><em>Exceptions</em>: If the corresponding {@link
+ * org.checkerframework.dataflow.cfg.node.Node} throws an exception, then it is assumed that no
+ * special handling is necessary and the store before the corresponding {@link
+ * org.checkerframework.dataflow.cfg.node.Node} will be passed along any exceptional edge.
*
- * <p>
- *
- * <em>Aliasing</em>: {@code thenStore} and {@code elseStore} are not
- * allowed to be used anywhere outside of this class (including use through
- * aliases). Complete control over the objects is transfered to this class.
+ * <p><em>Aliasing</em>: {@code thenStore} and {@code elseStore} are not allowed to be used
+ * anywhere outside of this class (including use through aliases). Complete control over the
+ * objects is transfered to this class.
*/
public ConditionalTransferResult(A value, S thenStore, S elseStore, boolean storeChanged) {
super(value);
@@ -59,27 +51,27 @@ public class ConditionalTransferResult<A extends AbstractValue<A>, S extends Sto
}
/**
- * Create a {@code ConditionalTransferResult} with {@code thenStore} as the
- * resulting store if the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} evaluates to
- * {@code true} and {@code elseStore} otherwise.
- *
- * <p>
+ * Create a {@code ConditionalTransferResult} with {@code thenStore} as the resulting store if
+ * the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} evaluates to {@code
+ * true} and {@code elseStore} otherwise.
*
- * <em>Exceptions</em>: If the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} throws an
- * exception, then the corresponding store in {@code exceptionalStores} is
- * used. If no exception is found in {@code exceptionalStores}, then it is
- * assumed that no special handling is necessary and the store before the
- * corresponding {@link org.checkerframework.dataflow.cfg.node.Node} will be passed along any exceptional edge.
+ * <p><em>Exceptions</em>: If the corresponding {@link
+ * org.checkerframework.dataflow.cfg.node.Node} throws an exception, then the corresponding
+ * store in {@code exceptionalStores} is used. If no exception is found in {@code
+ * exceptionalStores}, then it is assumed that no special handling is necessary and the store
+ * before the corresponding {@link org.checkerframework.dataflow.cfg.node.Node} will be passed
+ * along any exceptional edge.
*
- * <p>
- *
- * <em>Aliasing</em>: {@code thenStore}, {@code elseStore}, and any store in
- * {@code exceptionalStores} are not allowed to be used anywhere outside of
- * this class (including use through aliases). Complete control over the
- * objects is transfered to this class.
+ * <p><em>Aliasing</em>: {@code thenStore}, {@code elseStore}, and any store in {@code
+ * exceptionalStores} are not allowed to be used anywhere outside of this class (including use
+ * through aliases). Complete control over the objects is transfered to this class.
*/
- public ConditionalTransferResult(A value, S thenStore, S elseStore,
- Map<TypeMirror, S> exceptionalStores, boolean storeChanged) {
+ public ConditionalTransferResult(
+ A value,
+ S thenStore,
+ S elseStore,
+ Map<TypeMirror, S> exceptionalStores,
+ boolean storeChanged) {
super(value);
this.exceptionalStores = exceptionalStores;
this.thenStore = thenStore;
@@ -87,8 +79,8 @@ public class ConditionalTransferResult<A extends AbstractValue<A>, S extends Sto
this.storeChanged = storeChanged;
}
- public ConditionalTransferResult(A value, S thenStore, S elseStore,
- Map<TypeMirror, S> exceptionalStores) {
+ public ConditionalTransferResult(
+ A value, S thenStore, S elseStore, Map<TypeMirror, S> exceptionalStores) {
this(value, thenStore, elseStore, exceptionalStores, false);
}
@@ -126,12 +118,9 @@ public class ConditionalTransferResult<A extends AbstractValue<A>, S extends Sto
return result.toString();
}
- /**
- * @see org.checkerframework.dataflow.analysis.TransferResult#storeChanged()
- */
+ /** @see org.checkerframework.dataflow.analysis.TransferResult#storeChanged() */
@Override
public boolean storeChanged() {
- return storeChanged;
+ return storeChanged;
}
-
}