From f90a266706093d8650b47b44795113ea102152a6 Mon Sep 17 00:00:00 2001 From: apvrille <ludovic.apvrille@eurecom.fr> Date: Fri, 9 Feb 2018 17:21:32 +0100 Subject: [PATCH] Update on syntax checker of TML --- src/main/java/tmltranslator/TMLChoice.java | 5 ++--- src/main/java/tmltranslator/TMLSyntaxChecking.java | 9 +++++++++ src/main/java/ui/GTMLModeling.java | 4 ++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main/java/tmltranslator/TMLChoice.java b/src/main/java/tmltranslator/TMLChoice.java index 87a4bfe865..b4c8703865 100755 --- a/src/main/java/tmltranslator/TMLChoice.java +++ b/src/main/java/tmltranslator/TMLChoice.java @@ -78,13 +78,12 @@ public class TMLChoice extends TMLActivityElement{ public boolean isNonDeterministicGuard(int i) { if (i < getNbGuard()) { String guard = guards.get(i); - guard = getGuard(i); - guard = Conversion.replaceAllChar(guard, '[', " "); - guard = Conversion.replaceAllChar(guard, ']', " "); guard = guard.trim(); if (guard.length() == 0) { return true; } + guard = Conversion.replaceAllChar(guard, ' ', ""); + return (guard.compareTo("[]") == 0); } return false; } diff --git a/src/main/java/tmltranslator/TMLSyntaxChecking.java b/src/main/java/tmltranslator/TMLSyntaxChecking.java index 337b834db1..4d579b16dc 100755 --- a/src/main/java/tmltranslator/TMLSyntaxChecking.java +++ b/src/main/java/tmltranslator/TMLSyntaxChecking.java @@ -365,9 +365,18 @@ public class TMLSyntaxChecking { elseg = choice.getElseGuard(); afterg = choice.getAfterGuard(); for(j=0; j<choice.getNbGuard(); j++) { + /*if (action.length() == 1) { + if ((action.compareTo("[") == 0) || (action.compareTo("]") == 0)) { + addError(t, elt, SYNTAX_ERROR + " in expression " + action, TMLError.ERROR_BEHAVIOR); + } + + }*/ + //TraceManager.addDev("Testing guard: " + choice.getGuard(j)); if (!choice.isNonDeterministicGuard(j) && !choice.isStochasticGuard(j)) { if ((j!= elseg) && (j!=afterg)) { action = choice.getGuard(j); + action = action.trim(); + parsing(t, elt, "guard", action); } } diff --git a/src/main/java/ui/GTMLModeling.java b/src/main/java/ui/GTMLModeling.java index 72c21d70ac..ba9cb7de50 100755 --- a/src/main/java/ui/GTMLModeling.java +++ b/src/main/java/ui/GTMLModeling.java @@ -2405,7 +2405,7 @@ public class GTMLModeling { int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard(); int nbStocha = tmlchoice.nbOfStochasticGuard(); if ((nbNonDeter > 0) && (nbStocha > 0)) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards"); + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-deterministic and stochastic guards"); ce.setTDiagramPanel(tadp); ce.setTGComponent(tgc); checkingErrors.add(ce); @@ -2414,7 +2414,7 @@ public class GTMLModeling { if (nb > 0) { nb = nb + tmlchoice.nbOfElseAndAfterGuards(); if (nb != tmlchoice.getNbGuard()) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards)"); + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-deterministic/ stochastic and regular guards"); ce.setTDiagramPanel(tadp); ce.setTGComponent(tgc); checkingErrors.add(ce); -- GitLab