diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java | 2 | ||||
| -rw-r--r-- | src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java | 16 |
2 files changed, 5 insertions, 13 deletions
diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java index 37a167c..11fa612 100644 --- a/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java +++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java @@ -196,7 +196,7 @@ public class JavaExpressionReader { if (constructor.getDeclaringClass().isAnonymous()) { // TODO: generate anonymous class name TypeName anonymousClassName = TypeName.of("ANONYMOUS"); - classes.add(javaReader.readTypeDeclaration("ANONYMOUS", expression.getAnonymousClassDeclaration())); + classes.add(javaReader.readTypeDeclarationBody("ANONYMOUS", expression.getAnonymousClassDeclaration().bodyDeclarations())); return constructorCall(anonymousClassName, arguments); } else { return constructorCall(typeOf(expression), arguments); diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java index 70f9c3d..0eb5817 100644 --- a/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java +++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java @@ -12,7 +12,6 @@ import java.nio.file.Path; import java.util.List; import java.util.Optional; -import static java.util.Arrays.asList; import static org.zwobble.couscous.frontends.java.JavaTypes.typeOf; import static org.zwobble.couscous.util.ExtraLists.cons; import static org.zwobble.couscous.util.ExtraLists.ofType; @@ -33,20 +32,13 @@ public class JavaReader { private ClassNode readCompilationUnit(CompilationUnit ast) { String name = generateClassName(ast); TypeDeclaration type = (TypeDeclaration)ast.types().get(0); - return readTypeDeclaration(name, type); + return readTypeDeclarationBody(name, type.bodyDeclarations()); } - ClassNode readTypeDeclaration(String name, AnonymousClassDeclaration type) { + ClassNode readTypeDeclarationBody(String name, List bodyDeclarations) { ClassNodeBuilder classBuilder = new ClassNodeBuilder(name); - readFields(ofType(type.bodyDeclarations(), FieldDeclaration.class), classBuilder); - readMethods(ofType(type.bodyDeclarations(), MethodDeclaration.class), classBuilder); - return classBuilder.build(); - } - - ClassNode readTypeDeclaration(String name, TypeDeclaration type) { - ClassNodeBuilder classBuilder = new ClassNodeBuilder(name); - readFields(asList(type.getFields()), classBuilder); - readMethods(asList(type.getMethods()), classBuilder); + readFields(ofType(bodyDeclarations, FieldDeclaration.class), classBuilder); + readMethods(ofType(bodyDeclarations, MethodDeclaration.class), classBuilder); return classBuilder.build(); } |
