Index: compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java |
diff --git a/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java b/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java |
index 367993591fffb80f0bb1aac1a145ad271eadf744..3fe8c375ade671f91cdd0d2011c8ee3681b62a95 100644 |
--- a/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java |
+++ b/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java |
@@ -8,7 +8,6 @@ import com.google.common.annotations.VisibleForTesting; |
import com.google.common.base.Joiner; |
import com.google.common.base.Objects; |
import com.google.common.collect.ArrayListMultimap; |
-import com.google.common.collect.ImmutableSet; |
import com.google.common.collect.LinkedListMultimap; |
import com.google.common.collect.Lists; |
import com.google.common.collect.Multimap; |
@@ -126,20 +125,7 @@ import java.util.Set; |
* Analyzer of static type information. |
*/ |
public class TypeAnalyzer implements DartCompilationPhase { |
- private static final ImmutableSet<Token> ASSIGN_OPERATORS = |
- Sets.immutableEnumSet( |
- Token.ASSIGN, |
- Token.ASSIGN_BIT_OR, |
- Token.ASSIGN_BIT_XOR, |
- Token.ASSIGN_BIT_AND, |
- Token.ASSIGN_SHL, |
- Token.ASSIGN_SAR, |
- Token.ASSIGN_ADD, |
- Token.ASSIGN_SUB, |
- Token.ASSIGN_MUL, |
- Token.ASSIGN_DIV, |
- Token.ASSIGN_MOD, |
- Token.ASSIGN_TRUNC); |
+ |
private final Set<ClassElement> diagnosedAbstractClasses = Sets.newHashSet(); |
/** |
@@ -1379,8 +1365,8 @@ public class TypeAnalyzer implements DartCompilationPhase { |
FieldElement fieldElement = (FieldElement) element; |
MethodElement getter = fieldElement.getGetter(); |
MethodElement setter = fieldElement.getSetter(); |
- boolean inSetterContext = inSetterContext(node); |
- boolean inGetterContext = inGetterContext(node); |
+ boolean inSetterContext = Elements.inSetterContext(node); |
+ boolean inGetterContext = Elements.inGetterContext(node); |
ClassElement enclosingClass = null; |
if (fieldElement.getEnclosingElement() instanceof ClassElement) { |
enclosingClass = (ClassElement) fieldElement.getEnclosingElement(); |
@@ -1423,30 +1409,6 @@ public class TypeAnalyzer implements DartCompilationPhase { |
} |
} |
- private boolean inSetterContext(DartNode node) { |
- if (node.getParent() instanceof DartBinaryExpression) { |
- DartBinaryExpression expr = (DartBinaryExpression) node.getParent(); |
- if (ASSIGN_OPERATORS.contains(expr.getOperator()) && expr.getArg1() == node) { |
- return true; |
- } |
- } |
- return false; |
- } |
- |
- /** |
- * An assignment of the form node = <expr> is a write-only expression. Other types |
- * of assignments also read the value and require a getter access. |
- */ |
- private boolean inGetterContext(DartNode node) { |
- if (node.getParent() instanceof DartBinaryExpression) { |
- DartBinaryExpression expr = (DartBinaryExpression) node.getParent(); |
- if (Token.ASSIGN.equals(expr.getOperator()) && expr.getArg1() == node) { |
- return false; |
- } |
- } |
- return true; |
- } |
- |
@Override |
public Type visitReturnStatement(DartReturnStatement node) { |
DartExpression value = node.getValue(); |