From abecaaa2a7892127d5dab5e56b199ece5c88ccb1 Mon Sep 17 00:00:00 2001
From: Adam Knapp <knappadam5@gmail.com>
Date: Fri, 18 Dec 2020 16:38:47 +0100
Subject: [PATCH] Implementing dummy generateCode for statements

Signed-off-by: Adam Knapp <knappadam5@gmail.com>
---
 .../AST/TTCN3/statements/Goto_statement.java     | 11 +++++++++++
 .../TTCN3/statements/Interleave_Statement.java   | 11 +++++++++++
 .../AST/TTCN3/statements/Label_Statement.java    | 11 +++++++++++
 .../statements/Start_Profiler_Statement.java     | 11 +++++++++++
 .../designer/AST/TTCN3/statements/Statement.java | 16 +---------------
 .../statements/Stop_Profiler_Statement.java      | 11 +++++++++++
 6 files changed, 56 insertions(+), 15 deletions(-)

diff --git a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Goto_statement.java b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Goto_statement.java
index c7dcd1150e..2064609054 100644
--- a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Goto_statement.java
+++ b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Goto_statement.java
@@ -15,6 +15,7 @@ import org.eclipse.titan.designer.AST.Identifier;
 import org.eclipse.titan.designer.AST.ReferenceFinder;
 import org.eclipse.titan.designer.AST.GovernedSimple.CodeSectionType;
 import org.eclipse.titan.designer.AST.ReferenceFinder.Hit;
+import org.eclipse.titan.designer.compiler.JavaGenData;
 import org.eclipse.titan.designer.parsers.CompilationTimeStamp;
 import org.eclipse.titan.designer.parsers.ttcn3parser.ReParseException;
 import org.eclipse.titan.designer.parsers.ttcn3parser.TTCN3ReparseUpdater;
@@ -165,4 +166,14 @@ public final class Goto_statement extends Statement {
 		}
 		return true;
 	}
+	
+	@Override
+	/** {@inheritDoc} */
+	public void generateCode(final JavaGenData aData, final StringBuilder source) {
+		//TODO: implement properly
+		source.append( "\t\t" );
+		source.append( "//TODO: " );
+		source.append( getClass().getSimpleName() );
+		source.append( ".generateCode() is not implemented!\n" );
+	}
 }
diff --git a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Interleave_Statement.java b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Interleave_Statement.java
index efa1254937..fcf94cc1d3 100644
--- a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Interleave_Statement.java
+++ b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Interleave_Statement.java
@@ -16,6 +16,7 @@ import org.eclipse.titan.designer.AST.ReferenceFinder;
 import org.eclipse.titan.designer.AST.ReferenceFinder.Hit;
 import org.eclipse.titan.designer.AST.Scope;
 import org.eclipse.titan.designer.AST.TTCN3.definitions.Definition;
+import org.eclipse.titan.designer.compiler.JavaGenData;
 import org.eclipse.titan.designer.parsers.CompilationTimeStamp;
 import org.eclipse.titan.designer.parsers.ttcn3parser.ReParseException;
 import org.eclipse.titan.designer.parsers.ttcn3parser.TTCN3ReparseUpdater;
@@ -171,4 +172,14 @@ public final class Interleave_Statement extends Statement {
 		}
 		return true;
 	}
+	
+	@Override
+	/** {@inheritDoc} */
+	public void generateCode(final JavaGenData aData, final StringBuilder source) {
+		//TODO: implement properly
+		source.append( "\t\t" );
+		source.append( "//TODO: " );
+		source.append( getClass().getSimpleName() );
+		source.append( ".generateCode() is not implemented!\n" );
+	}
 }
diff --git a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Label_Statement.java b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Label_Statement.java
index b132ff62b5..2733235ed8 100644
--- a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Label_Statement.java
+++ b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Label_Statement.java
@@ -14,6 +14,7 @@ import org.eclipse.titan.designer.AST.Identifier;
 import org.eclipse.titan.designer.AST.ReferenceFinder;
 import org.eclipse.titan.designer.AST.GovernedSimple.CodeSectionType;
 import org.eclipse.titan.designer.AST.ReferenceFinder.Hit;
+import org.eclipse.titan.designer.compiler.JavaGenData;
 import org.eclipse.titan.designer.parsers.CompilationTimeStamp;
 import org.eclipse.titan.designer.parsers.ttcn3parser.ReParseException;
 import org.eclipse.titan.designer.parsers.ttcn3parser.TTCN3ReparseUpdater;
@@ -118,4 +119,14 @@ public final class Label_Statement extends Statement {
 		}
 		return true;
 	}
+	
+	@Override
+	/** {@inheritDoc} */
+	public void generateCode(final JavaGenData aData, final StringBuilder source) {
+		//TODO: implement properly
+		source.append( "\t\t" );
+		source.append( "//TODO: " );
+		source.append( getClass().getSimpleName() );
+		source.append( ".generateCode() is not implemented!\n" );
+	}
 }
diff --git a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Start_Profiler_Statement.java b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Start_Profiler_Statement.java
index 3105380a72..8684782aa6 100644
--- a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Start_Profiler_Statement.java
+++ b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Start_Profiler_Statement.java
@@ -13,6 +13,7 @@ import org.eclipse.titan.designer.AST.ASTVisitor;
 import org.eclipse.titan.designer.AST.INamedNode;
 import org.eclipse.titan.designer.AST.ReferenceFinder;
 import org.eclipse.titan.designer.AST.ReferenceFinder.Hit;
+import org.eclipse.titan.designer.compiler.JavaGenData;
 import org.eclipse.titan.designer.AST.Scope;
 import org.eclipse.titan.designer.AST.GovernedSimple.CodeSectionType;
 import org.eclipse.titan.designer.parsers.CompilationTimeStamp;
@@ -94,4 +95,14 @@ public final class Start_Profiler_Statement extends Statement {
 	protected boolean memberAccept(final ASTVisitor v) {
 		return true;
 	}
+	
+	@Override
+	/** {@inheritDoc} */
+	public void generateCode(final JavaGenData aData, final StringBuilder source) {
+		//TODO: implement properly
+		source.append( "\t\t" );
+		source.append( "//TODO: " );
+		source.append( getClass().getSimpleName() );
+		source.append( ".generateCode() is not implemented!\n" );
+	}
 }
diff --git a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Statement.java b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Statement.java
index ca1959daf2..bd14be2957 100644
--- a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Statement.java
+++ b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Statement.java
@@ -528,27 +528,13 @@ public abstract class Statement extends ASTNode implements ILocateableNode, IApp
 	 * */
 	public abstract void setCodeSection(final CodeSectionType codeSection);
 
-	//TODO: use abstract method in abstract class to make sure, that all child class have separate implementation
-	/**
-	 * Add generated java code on this level
-	 * @param aData the generated java code with other info
-	 */
-	//public abstract void generateCode( final JavaGenData aData, final StringBuilder source );
-
-	//TODO: remove
 	/**
 	 * Generate code for this statement.
 	 *
 	 * @param aData the structure to put imports into and get temporal variable names from.
 	 * @param source the source code generated
 	 */
-	public void generateCode( final JavaGenData aData, final StringBuilder source ) {
-		//default implementation
-		source.append( "\t\t" );
-		source.append( "//TODO: " );
-		source.append( getClass().getSimpleName() );
-		source.append( ".generateCode() is not implemented!\n" );
-	}
+	public abstract void generateCode( final JavaGenData aData, final StringBuilder source );
 
 	/**
 	 * Some statements can be used in altguards.
diff --git a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Stop_Profiler_Statement.java b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Stop_Profiler_Statement.java
index 93c2a7f5f7..5ae64abf2d 100644
--- a/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Stop_Profiler_Statement.java
+++ b/org.eclipse.titan.designer/src/org/eclipse/titan/designer/AST/TTCN3/statements/Stop_Profiler_Statement.java
@@ -13,6 +13,7 @@ import org.eclipse.titan.designer.AST.ASTVisitor;
 import org.eclipse.titan.designer.AST.INamedNode;
 import org.eclipse.titan.designer.AST.ReferenceFinder;
 import org.eclipse.titan.designer.AST.ReferenceFinder.Hit;
+import org.eclipse.titan.designer.compiler.JavaGenData;
 import org.eclipse.titan.designer.AST.Scope;
 import org.eclipse.titan.designer.AST.GovernedSimple.CodeSectionType;
 import org.eclipse.titan.designer.parsers.CompilationTimeStamp;
@@ -94,4 +95,14 @@ public final class Stop_Profiler_Statement extends Statement {
 	protected boolean memberAccept(final ASTVisitor v) {
 		return true;
 	}
+	
+	@Override
+	/** {@inheritDoc} */
+	public void generateCode(final JavaGenData aData, final StringBuilder source) {
+		//TODO: implement properly
+		source.append( "\t\t" );
+		source.append( "//TODO: " );
+		source.append( getClass().getSimpleName() );
+		source.append( ".generateCode() is not implemented!\n" );
+	}
 }
-- 
GitLab