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

Unified Diff: editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/ObjectSemanticProcessor.java

Issue 24481002: New analyzer_experimental snapshot. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 3 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/processor/ObjectSemanticProcessor.java
diff --git a/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/ObjectSemanticProcessor.java b/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/ObjectSemanticProcessor.java
index 90f40a7a5f6616ab87acd54f77ab4351995feb6c..fd5c32c57c19f8d5ee1c467c913869daa4e4eb53 100644
--- a/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/ObjectSemanticProcessor.java
+++ b/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/ObjectSemanticProcessor.java
@@ -283,6 +283,7 @@ public class ObjectSemanticProcessor extends SemanticProcessor {
if (args.isEmpty()) {
if ("hashCode".equals(name) || isMethodInClass(node, "length", "java.lang.String")
|| isMethodInClass(node, "isEmpty", "java.lang.String")
+ || isMethodInClass(node, "name", "java.lang.Enum")
|| isMethodInClass(node, "ordinal", "java.lang.Enum")
|| isMethodInClass(node, "values", "java.lang.Enum")) {
replaceNode(node, propertyAccess(target, nameNode));
@@ -391,6 +392,22 @@ public class ObjectSemanticProcessor extends SemanticProcessor {
replaceNode(target, identifier("JavaString"));
return null;
}
+ if (isMethodInClass(node, "compile", "java.util.regex.Pattern")) {
+ replaceNode(
+ node,
+ instanceCreationExpression(Keyword.NEW, typeName("RegExp"), args.get(0)));
+ return null;
+ }
+ if (isMethodInClass(node, "matcher", "java.util.regex.Pattern")) {
+ replaceNode(
+ node,
+ instanceCreationExpression(
+ Keyword.NEW,
+ typeName("JavaPatternMatcher"),
+ target,
+ args.get(0)));
+ return null;
+ }
if (name.equals("longValue") && target instanceof MethodInvocation) {
MethodInvocation node2 = (MethodInvocation) target;
if (isMethodInClass(node2, "floor", "java.lang.Math")) {
@@ -577,6 +594,13 @@ public class ObjectSemanticProcessor extends SemanticProcessor {
if (name.equals("StringBuilder")) {
replaceNode(nameNode, identifier("JavaStringBuilder"));
}
+ // java.util.regex.*
+ if (JavaUtils.isTypeNamed(typeBinding, "java.util.regex.Pattern")) {
+ replaceNode(nameNode, identifier("RegExp"));
+ }
+ if (JavaUtils.isTypeNamed(typeBinding, "java.util.regex.Matcher")) {
+ replaceNode(nameNode, identifier("JavaPatternMatcher"));
+ }
// Class<T> -> Type
if (name.equals("Class")) {
replaceNode(node, typeName("Type"));

Powered by Google App Engine
This is Rietveld 408576698