From d7d6cff396b4a0dc51aa4bc733c57915fe1a7355 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ronny=20B=C3=B6ttger?= <s6013406@mail.zih.tu-dresden.de>
Date: Fri, 5 Nov 2021 02:46:45 +0100
Subject: [PATCH] fixed AddEmptyDeclaration fixed relativize problem

---
 src/main/jastadd/AddEmptyDeclaration.jrag        | 12 +++---------
 src/main/java/org/jastadd/preprocessor/Main.java |  3 ++-
 2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/src/main/jastadd/AddEmptyDeclaration.jrag b/src/main/jastadd/AddEmptyDeclaration.jrag
index ef477bd..1e0ffa8 100644
--- a/src/main/jastadd/AddEmptyDeclaration.jrag
+++ b/src/main/jastadd/AddEmptyDeclaration.jrag
@@ -1,18 +1,12 @@
 aspect AddEmptyDeclaration {
-  syn GrammarFile GrammarFile.addEmptyDecl() {
+  public GrammarFile GrammarFile.addEmptyDecl() {
 
     Declaration emptyDecl = new EmptyDeclaration();
     SingleLineComment slc = new SingleLineComment();
-    slc.setText("// DO NOT EDIT. Automatically generated using RoleAST.jar");
+    slc.setText("// DO NOT EDIT. Automatically generated using RoleAST.jar\n");
     emptyDecl.addComment(slc);
 
-    JastAddList declList = new JastAddList();
-    declList.add(emptyDecl);
-    for (Declaration decl : this.getDeclarationList()) {
-      declList.add(decl);
-    }
-
-    this.setDeclarationList(declList);
+    this.getDeclarationList().insertChild(emptyDecl, 0);
 
     //this.addDeclaration(emptyDecl);
     return this;
diff --git a/src/main/java/org/jastadd/preprocessor/Main.java b/src/main/java/org/jastadd/preprocessor/Main.java
index 66005eb..da34a4a 100644
--- a/src/main/java/org/jastadd/preprocessor/Main.java
+++ b/src/main/java/org/jastadd/preprocessor/Main.java
@@ -109,7 +109,8 @@ public class Main extends org.jastadd.relast.compiler.RelAstProcessor {
       printMessage("Writing output file " + grammarFile.getFileName());
       // TODO decide and document what the file name should be, the full path or a simple name?
       grammarFile.addEmptyDecl();
-      writeToFile(outputBasePath.resolve(inputBasePath.relativize(Paths.get(grammarFile.getFileName()))), grammarFile.generateAbstractGrammar());
+      System.out.println(grammarFile.getFileName());
+      writeToFile(outputBasePath.resolve(grammarFile.getFileName()), grammarFile.generateAbstractGrammar());
     }
 
 
-- 
GitLab