Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(371)

Unified Diff: editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/engine/EngineSemanticProcessor.java

Issue 27278004: New analyzer_experimental snapshot. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/engine/EngineSemanticProcessor.java
diff --git a/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/engine/EngineSemanticProcessor.java b/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/engine/EngineSemanticProcessor.java
index 273bd8a1ee0d1e809380a8d4fe85fa9c8e566dcc..109576879ce867f8c29256ddcbe7ecc2cb35c922 100644
--- a/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/engine/EngineSemanticProcessor.java
+++ b/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/engine/EngineSemanticProcessor.java
@@ -31,6 +31,7 @@ import com.google.dart.engine.ast.Expression;
import com.google.dart.engine.ast.ExpressionStatement;
import com.google.dart.engine.ast.FieldDeclaration;
import com.google.dart.engine.ast.FormalParameter;
+import com.google.dart.engine.ast.InstanceCreationExpression;
import com.google.dart.engine.ast.ListLiteral;
import com.google.dart.engine.ast.MethodDeclaration;
import com.google.dart.engine.ast.MethodInvocation;
@@ -589,6 +590,25 @@ public class EngineSemanticProcessor extends SemanticProcessor {
}
@Override
+ public Void visitInstanceCreationExpression(InstanceCreationExpression node) {
+ super.visitInstanceCreationExpression(node);
+ Object binding = context.getNodeBinding(node);
+ if (binding instanceof IMethodBinding) {
+ IMethodBinding methodBinding = (IMethodBinding) binding;
+ // new IntList(5) -> new List()
+ if (isMethodInClass2(
+ methodBinding,
+ "<init>(int)",
+ "com.google.dart.engine.utilities.collection.IntList")) {
+ node.getArgumentList().getArguments().clear();
+ return null;
+ }
+ }
+ // done
+ return null;
+ }
+
+ @Override
public Void visitMethodDeclaration(MethodDeclaration node) {
super.visitMethodDeclaration(node);
IMethodBinding binding = (IMethodBinding) context.getNodeBinding(node);

Powered by Google App Engine
This is Rietveld 408576698