diff --git a/monticore-grammar/src/main/grammars/de/monticore/statements/MCCommonStatements.mc4 b/monticore-grammar/src/main/grammars/de/monticore/statements/MCCommonStatements.mc4 index 1d50110164..719bc40c8a 100644 --- a/monticore-grammar/src/main/grammars/de/monticore/statements/MCCommonStatements.mc4 +++ b/monticore-grammar/src/main/grammars/de/monticore/statements/MCCommonStatements.mc4 @@ -43,12 +43,56 @@ scope(non_exporting ordered) MCJavaBlock implements MCStatement /** * All the Java Modifier + * The method getModifier() ensures conservative behaviour with previous + * grammar definition that used an enumeration. The square brackets are + * required to generate the ASTConstantsMCCommonStatements constants. */ -JavaModifier implements MCModifier = - Modifier:["private" | "public" | "protected" | "static" - | "transient" | "final" | "abstract" | "native" - | "threadsafe" | "synchronized" | "const" | "volatile" - | "strictfp" | modifier_default:"default"] ; +interface JavaModifier extends MCModifier; + +astrule JavaModifier + = method public int getModifier(){}; + +ModifierPrivate implements JavaModifier + = [private:"private"]; + +ModifierProtected implements JavaModifier + = [protected:"protected"]; + +ModifierPublic implements JavaModifier + = [public:"public"]; + +ModifierStatic implements JavaModifier + = [static:"static"]; + +ModifierTransient implements JavaModifier + = [transient:"transient"]; + +ModifierFinal implements JavaModifier + = [final:"final"]; + +ModifierAbstract implements JavaModifier + = [abstract:"abstract"]; + +ModifierNative implements JavaModifier + = [native:"native"]; + +ModifierThreadsafe implements JavaModifier + = [threadsafe:"threadsafe"]; + +ModifierSynchronized implements JavaModifier + = [synchronized:"synchronized"]; + +ModifierConst implements JavaModifier + = [const:"const"]; + +ModifierVolatile implements JavaModifier + = [volatile:"volatile"]; + +ModifierStrictFp implements JavaModifier + = [strictfp:"strictfp"]; + +ModifierDefault implements JavaModifier + = [modifier_default:"default"]; IfStatement implements MCStatement = "if" "(" condition:Expression ")" diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierAbstract.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierAbstract.java new file mode 100644 index 0000000000..f2ce85761e --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierAbstract.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierAbstract extends ASTModifierAbstractTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.ABSTRACT; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierConst.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierConst.java new file mode 100644 index 0000000000..4599dfc393 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierConst.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierConst extends ASTModifierConstTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.CONST; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierDefault.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierDefault.java new file mode 100644 index 0000000000..e0566b4612 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierDefault.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierDefault extends ASTModifierDefaultTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.MODIFIER_DEFAULT; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierFinal.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierFinal.java new file mode 100644 index 0000000000..bda6a8fada --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierFinal.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierFinal extends ASTModifierFinalTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.FINAL; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierNative.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierNative.java new file mode 100644 index 0000000000..67664a3054 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierNative.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierNative extends ASTModifierNativeTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.NATIVE; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierPrivate.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierPrivate.java new file mode 100644 index 0000000000..9c68f153d3 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierPrivate.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierPrivate extends ASTModifierPrivateTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.PRIVATE; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierProtected.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierProtected.java new file mode 100644 index 0000000000..b33c0158c3 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierProtected.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierProtected extends ASTModifierProtectedTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.PROTECTED; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierPublic.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierPublic.java new file mode 100644 index 0000000000..b279e4af6c --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierPublic.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierPublic extends ASTModifierPublicTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.PUBLIC; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierStatic.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierStatic.java new file mode 100644 index 0000000000..d6c1b67d28 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierStatic.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierStatic extends ASTModifierStaticTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.STATIC; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierStrictFp.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierStrictFp.java new file mode 100644 index 0000000000..53919733d6 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierStrictFp.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierStrictFp extends ASTModifierStrictFpTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.STRICTFP; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierSynchronized.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierSynchronized.java new file mode 100644 index 0000000000..8934a39f5b --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierSynchronized.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierSynchronized extends ASTModifierSynchronizedTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.SYNCHRONIZED; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierThreadsafe.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierThreadsafe.java new file mode 100644 index 0000000000..f761e00f6d --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierThreadsafe.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierThreadsafe extends ASTModifierThreadsafeTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.THREADSAFE; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierTransient.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierTransient.java new file mode 100644 index 0000000000..7691659bc1 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierTransient.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierTransient extends ASTModifierTransientTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.TRANSIENT; + } +} diff --git a/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierVolatile.java b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierVolatile.java new file mode 100644 index 0000000000..9b4d8ef499 --- /dev/null +++ b/monticore-grammar/src/main/java/de/monticore/statements/mccommonstatements/_ast/ASTModifierVolatile.java @@ -0,0 +1,9 @@ +package de.monticore.statements.mccommonstatements._ast; + +public class ASTModifierVolatile extends ASTModifierVolatileTOP { + + @Override + public int getModifier() { + return ASTConstantsMCCommonStatements.VOLATILE; + } +}