| 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"));
|
|
|