diff options
Diffstat (limited to 'third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/cfg/node/CaseNode.java')
-rw-r--r-- | third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/cfg/node/CaseNode.java | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/cfg/node/CaseNode.java b/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/cfg/node/CaseNode.java deleted file mode 100644 index a694dfb975..0000000000 --- a/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/cfg/node/CaseNode.java +++ /dev/null @@ -1,81 +0,0 @@ -package org.checkerframework.dataflow.cfg.node; - -import com.sun.source.tree.CaseTree; -import com.sun.source.tree.Tree.Kind; -import java.util.Collection; -import java.util.LinkedList; -import javax.lang.model.type.TypeKind; -import javax.lang.model.util.Types; -import org.checkerframework.dataflow.util.HashCodeUtils; - -/** - * A node for a case in a switch statement. Although a case has no abstract value, it can imply - * facts about the abstract values of its operands. - * - * <pre> - * case <em>constant</em>: - * </pre> - * - * @author Stefan Heule - * @author Charlie Garrett - */ -public class CaseNode extends Node { - - protected CaseTree tree; - protected Node switchExpr; - protected Node caseExpr; - - public CaseNode(CaseTree tree, Node switchExpr, Node caseExpr, Types types) { - super(types.getNoType(TypeKind.NONE)); - assert tree.getKind().equals(Kind.CASE); - this.tree = tree; - this.switchExpr = switchExpr; - this.caseExpr = caseExpr; - } - - public Node getSwitchOperand() { - return switchExpr; - } - - public Node getCaseOperand() { - return caseExpr; - } - - @Override - public CaseTree getTree() { - return tree; - } - - @Override - public <R, P> R accept(NodeVisitor<R, P> visitor, P p) { - return visitor.visitCase(this, p); - } - - @Override - public String toString() { - return "case " + getCaseOperand() + ":"; - } - - @Override - public boolean equals(Object obj) { - if (obj == null || !(obj instanceof CaseNode)) { - return false; - } - CaseNode other = (CaseNode) obj; - return getSwitchOperand().equals(other.getSwitchOperand()) - && getCaseOperand().equals(other.getCaseOperand()); - } - - @Override - public int hashCode() { - return HashCodeUtils.hash(getSwitchOperand(), getCaseOperand()); - } - - @Override - public Collection<Node> getOperands() { - LinkedList<Node> list = new LinkedList<Node>(); - list.add(getSwitchOperand()); - list.add(getCaseOperand()); - return list; - } -} |