diff --git a/AlgebraicDataflowArchitectureModel/src/algorithms/CodeGenerator.java b/AlgebraicDataflowArchitectureModel/src/algorithms/CodeGenerator.java index f0da1b8..82b4ab0 100644 --- a/AlgebraicDataflowArchitectureModel/src/algorithms/CodeGenerator.java +++ b/AlgebraicDataflowArchitectureModel/src/algorithms/CodeGenerator.java @@ -45,7 +45,27 @@ rn.getIdentifierTemplate().getResourceName())); codes.add(type); } - + return codes; + } + + static public ArrayList getCodes(ArrayList codeTree){ + ArrayList codes = new ArrayList<>(); + for(TypeDeclaration type:codeTree) { + codes.add("public class " + type.getTypeName() + "{"); + for(FieldDeclaration field:type.getFields()) { + codes.add("\t" + field.getType().getImplementastionTypeName() + " " + field.getName() + ";"); + } + codes.add(""); + for(MethodDeclaration method:type.getMethods()) { + codes.add("\t" + "public " + method.getReturnType().getImplementastionTypeName() + " " + method.getName() + "{"); + for(VariableDeclaration value:method.getParameters()) { + + } + codes.add("\t" + "}"); + codes.add(""); + } + codes.add("}"); + } return codes; } diff --git a/AlgebraicDataflowArchitectureModel/src/tests/CodeGeneratorTest.java b/AlgebraicDataflowArchitectureModel/src/tests/CodeGeneratorTest.java index 3e8c1e9..43fea76 100644 --- a/AlgebraicDataflowArchitectureModel/src/tests/CodeGeneratorTest.java +++ b/AlgebraicDataflowArchitectureModel/src/tests/CodeGeneratorTest.java @@ -4,6 +4,7 @@ import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; +import java.util.ArrayList; import algorithms.*; import code.ast.FieldDeclaration; @@ -23,7 +24,8 @@ ResourceDependencyGraph graph = DataStorageNecessity.run(model); EdgeTransitionSelectable.run(graph); DataStorageDecision.run(graph); - for(TypeDeclaration str:CodeGenerator.doGenerate(graph, model)) { + ArrayList codetree = CodeGenerator.doGenerate(graph, model); + for(TypeDeclaration str:codetree) { System.out.println(str.getTypeName()); for(FieldDeclaration field:str.getFields()) { System.out.println("-" + field.getType().getTypeName() + " " + field.getName()); @@ -32,6 +34,9 @@ System.out.println("-" + method.getReturnType() + " " + method.getName()); } } + for(String str:CodeGenerator.getCodes(codetree)) { + System.out.println(str); + } } catch (ExpectedChannel | ExpectedChannelName | ExpectedLeftCurlyBracket | ExpectedInOrOutKeyword | ExpectedStateTransition | ExpectedEquals | ExpectedRHSExpression | WrongLHSExpression | WrongRHSExpression | ExpectedRightBracket e) {