From 3cc68235ddf4dd0f9491bc4a3e649b3da14425e8 Mon Sep 17 00:00:00 2001 From: Arnaud Roques Date: Thu, 22 Feb 2024 20:28:03 +0100 Subject: [PATCH] refactor: prepare preprocessor error improvement --- gradle.properties | 2 +- .../sourceforge/plantuml/preproc/Defines.java | 4 +- src/net/sourceforge/plantuml/preproc/Sub.java | 4 +- .../plantuml/preproc2/PreprocessorUtils.java | 10 +-- src/net/sourceforge/plantuml/tim/Eater.java | 54 ++++++------- .../plantuml/tim/EaterAffectation.java | 2 +- .../plantuml/tim/EaterAffectationDefine.java | 2 +- .../sourceforge/plantuml/tim/EaterAssert.java | 6 +- .../plantuml/tim/EaterDeclareProcedure.java | 2 +- .../tim/EaterDeclareReturnFunction.java | 2 +- .../plantuml/tim/EaterDumpMemory.java | 2 +- .../sourceforge/plantuml/tim/EaterElseIf.java | 2 +- ...eptionLocated.java => EaterException.java} | 16 +--- .../plantuml/tim/EaterForeach.java | 2 +- .../plantuml/tim/EaterFunctionCall.java | 9 +-- src/net/sourceforge/plantuml/tim/EaterIf.java | 2 +- .../sourceforge/plantuml/tim/EaterIfdef.java | 2 +- .../sourceforge/plantuml/tim/EaterIfndef.java | 2 +- .../sourceforge/plantuml/tim/EaterImport.java | 2 +- .../plantuml/tim/EaterInclude.java | 2 +- .../plantuml/tim/EaterIncludeDef.java | 2 +- .../plantuml/tim/EaterIncludesub.java | 2 +- .../plantuml/tim/EaterLegacyDefine.java | 2 +- .../plantuml/tim/EaterLegacyDefineLong.java | 2 +- .../sourceforge/plantuml/tim/EaterLog.java | 2 +- .../sourceforge/plantuml/tim/EaterReturn.java | 2 +- .../plantuml/tim/EaterStartsub.java | 4 +- .../sourceforge/plantuml/tim/EaterTheme.java | 16 ++-- .../sourceforge/plantuml/tim/EaterUndef.java | 2 +- .../sourceforge/plantuml/tim/EaterWhile.java | 2 +- .../plantuml/tim/ExecutionContextWhile.java | 2 +- .../plantuml/tim/ExecutionContexts.java | 2 +- .../plantuml/tim/FunctionsSet.java | 20 ++--- .../sourceforge/plantuml/tim/StringEater.java | 2 +- .../sourceforge/plantuml/tim/TContext.java | 78 +++++++++---------- .../sourceforge/plantuml/tim/TFunction.java | 4 +- .../plantuml/tim/TFunctionImpl.java | 16 ++-- src/net/sourceforge/plantuml/tim/TMemory.java | 4 +- .../plantuml/tim/TMemoryGlobal.java | 4 +- .../plantuml/tim/TMemoryLocal.java | 2 +- .../sourceforge/plantuml/tim/TimLoader.java | 4 +- .../plantuml/tim/VariableManager.java | 8 +- .../plantuml/tim/expression/Knowledge.java | 4 +- .../expression/ReversePolishInterpretor.java | 17 ++-- .../plantuml/tim/expression/ShuntingYard.java | 6 +- .../plantuml/tim/expression/TokenStack.java | 20 ++--- .../plantuml/tim/expression/TokenType.java | 6 +- .../tim/iterator/AbstractCodeIterator.java | 6 +- .../plantuml/tim/iterator/CodeIterator.java | 8 +- .../tim/iterator/CodeIteratorAffectation.java | 10 +-- .../tim/iterator/CodeIteratorForeach.java | 10 +-- .../plantuml/tim/iterator/CodeIteratorIf.java | 22 +++--- .../tim/iterator/CodeIteratorImpl.java | 6 +- .../iterator/CodeIteratorInnerComment.java | 4 +- .../iterator/CodeIteratorLegacyDefine.java | 4 +- .../tim/iterator/CodeIteratorLongComment.java | 4 +- .../tim/iterator/CodeIteratorProcedure.java | 4 +- .../iterator/CodeIteratorReturnFunction.java | 8 +- .../iterator/CodeIteratorShortComment.java | 4 +- .../tim/iterator/CodeIteratorSub.java | 8 +- .../tim/iterator/CodeIteratorWhile.java | 8 +- .../plantuml/tim/stdlib/AlwaysFalse.java | 4 +- .../plantuml/tim/stdlib/AlwaysTrue.java | 4 +- .../plantuml/tim/stdlib/CallUserFunction.java | 6 +- .../sourceforge/plantuml/tim/stdlib/Chr.java | 4 +- .../plantuml/tim/stdlib/Darken.java | 6 +- .../plantuml/tim/stdlib/DateFunction.java | 6 +- .../plantuml/tim/stdlib/Dec2hex.java | 4 +- .../plantuml/tim/stdlib/Dirpath.java | 4 +- .../sourceforge/plantuml/tim/stdlib/Eval.java | 4 +- .../plantuml/tim/stdlib/Feature.java | 4 +- .../plantuml/tim/stdlib/FileExists.java | 4 +- .../plantuml/tim/stdlib/Filename.java | 4 +- .../plantuml/tim/stdlib/FunctionExists.java | 4 +- .../plantuml/tim/stdlib/GetAllStdlib.java | 6 +- .../plantuml/tim/stdlib/GetAllTheme.java | 4 +- .../plantuml/tim/stdlib/GetJsonKey.java | 8 +- .../plantuml/tim/stdlib/GetJsonType.java | 4 +- .../plantuml/tim/stdlib/GetVariableValue.java | 4 +- .../plantuml/tim/stdlib/GetVersion.java | 4 +- .../plantuml/tim/stdlib/Getenv.java | 4 +- .../plantuml/tim/stdlib/Hex2dec.java | 4 +- .../plantuml/tim/stdlib/HslColor.java | 4 +- .../plantuml/tim/stdlib/IntVal.java | 4 +- .../plantuml/tim/stdlib/InvokeProcedure.java | 6 +- .../plantuml/tim/stdlib/IsDark.java | 6 +- .../plantuml/tim/stdlib/IsLight.java | 6 +- .../plantuml/tim/stdlib/JsonKeyExists.java | 4 +- .../plantuml/tim/stdlib/Lighten.java | 6 +- .../plantuml/tim/stdlib/LoadJson.java | 12 ++- .../plantuml/tim/stdlib/LogicalAnd.java | 4 +- .../plantuml/tim/stdlib/LogicalNand.java | 4 +- .../plantuml/tim/stdlib/LogicalNor.java | 4 +- .../plantuml/tim/stdlib/LogicalNot.java | 4 +- .../plantuml/tim/stdlib/LogicalNxor.java | 4 +- .../plantuml/tim/stdlib/LogicalOr.java | 4 +- .../plantuml/tim/stdlib/LogicalXor.java | 4 +- .../sourceforge/plantuml/tim/stdlib/Now.java | 4 +- .../sourceforge/plantuml/tim/stdlib/Ord.java | 4 +- .../plantuml/tim/stdlib/RandomFunction.java | 6 +- .../tim/stdlib/RetrieveProcedure.java | 4 +- .../plantuml/tim/stdlib/ReverseColor.java | 6 +- .../tim/stdlib/ReverseHsluvColor.java | 6 +- .../plantuml/tim/stdlib/SetVariableValue.java | 4 +- .../tim/stdlib/SimpleReturnFunction.java | 4 +- .../sourceforge/plantuml/tim/stdlib/Size.java | 4 +- .../plantuml/tim/stdlib/SplitStr.java | 4 +- .../plantuml/tim/stdlib/Strlen.java | 4 +- .../plantuml/tim/stdlib/Strpos.java | 4 +- .../plantuml/tim/stdlib/Substr.java | 4 +- .../plantuml/tim/stdlib/VariableExists.java | 4 +- .../sourceforge/plantuml/version/Version.java | 2 +- .../plantuml/tim/TimTestUtils.java | 8 +- .../plantuml/tim/stdlib/AlwaysFalseTest.java | 8 +- .../plantuml/tim/stdlib/AlwaysTrueTest.java | 8 +- .../plantuml/tim/stdlib/ChrTest.java | 5 +- .../plantuml/tim/stdlib/Dec2hexTest.java | 8 +- .../plantuml/tim/stdlib/FeatureTest.java | 10 +-- .../plantuml/tim/stdlib/GetAllStdlibTest.java | 6 +- .../plantuml/tim/stdlib/GetAllThemeTest.java | 4 +- .../plantuml/tim/stdlib/GetJsonKeyTest.java | 10 +-- .../plantuml/tim/stdlib/GetJsonTypeTest.java | 10 +-- .../plantuml/tim/stdlib/GetenvTest.java | 8 +- .../plantuml/tim/stdlib/Hex2decTest.java | 8 +- .../plantuml/tim/stdlib/LowerTest.java | 10 +-- .../plantuml/tim/stdlib/OrdTest.java | 5 +- .../tim/stdlib/RandomFuntionTest.java | 10 +-- .../plantuml/tim/stdlib/SizeTest.java | 10 +-- .../plantuml/tim/stdlib/UpperTest.java | 10 +-- 129 files changed, 412 insertions(+), 432 deletions(-) rename src/net/sourceforge/plantuml/tim/{EaterExceptionLocated.java => EaterException.java} (75%) diff --git a/gradle.properties b/gradle.properties index 159ed6443..ddbe9ba1d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ # Warning, "version" should be the same in gradle.properties and Version.java # Any idea anyone how to magically synchronize those :-) ? -version = 1.2024.4beta4 +version = 1.2024.4beta5 org.gradle.workers.max = 3 \ No newline at end of file diff --git a/src/net/sourceforge/plantuml/preproc/Defines.java b/src/net/sourceforge/plantuml/preproc/Defines.java index eb2a1550f..14ec49a0e 100644 --- a/src/net/sourceforge/plantuml/preproc/Defines.java +++ b/src/net/sourceforge/plantuml/preproc/Defines.java @@ -56,7 +56,7 @@ import net.sourceforge.plantuml.security.SFile; import net.sourceforge.plantuml.security.SecurityProfile; import net.sourceforge.plantuml.security.SecurityUtils; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TMemory; import net.sourceforge.plantuml.tim.TVariableScope; import net.sourceforge.plantuml.utils.Log; @@ -82,7 +82,7 @@ public class Defines implements Truth { return new Defines(); } - public void copyTo(TMemory memory, StringLocated location) throws EaterExceptionLocated { + public void copyTo(TMemory memory, StringLocated location) throws EaterException { for (Entry ent : values.entrySet()) { final String name = ent.getKey(); final Define def = ent.getValue(); diff --git a/src/net/sourceforge/plantuml/preproc/Sub.java b/src/net/sourceforge/plantuml/preproc/Sub.java index e14e5e746..b39e8d4d0 100644 --- a/src/net/sourceforge/plantuml/preproc/Sub.java +++ b/src/net/sourceforge/plantuml/preproc/Sub.java @@ -42,7 +42,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.EaterStartsub; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TMemory; @@ -79,7 +79,7 @@ public class Sub { } public static Sub fromFile(ReadLine reader, String blocname, TContext context, TMemory memory) - throws IOException, EaterExceptionLocated { + throws IOException, EaterException { Sub result = null; StringLocated s = null; boolean skip = false; diff --git a/src/net/sourceforge/plantuml/preproc2/PreprocessorUtils.java b/src/net/sourceforge/plantuml/preproc2/PreprocessorUtils.java index 4fc609f49..8132faab8 100644 --- a/src/net/sourceforge/plantuml/preproc2/PreprocessorUtils.java +++ b/src/net/sourceforge/plantuml/preproc2/PreprocessorUtils.java @@ -53,7 +53,7 @@ import net.sourceforge.plantuml.preproc.StartDiagramExtractReader; import net.sourceforge.plantuml.preproc.Stdlib; import net.sourceforge.plantuml.security.SURL; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.utils.Log; public class PreprocessorUtils { @@ -133,7 +133,7 @@ public class PreprocessorUtils { } public static ReadLine getReaderIncludeUrl(final SURL url, StringLocated s, String suf, Charset charset) - throws EaterExceptionLocated { + throws EaterException { try { if (StartDiagramExtractReader.containsStartDiagram(url, s, charset)) return StartDiagramExtractReader.build(url, s, suf, charset); @@ -141,16 +141,16 @@ public class PreprocessorUtils { return getReaderInclude(url, s, charset); } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("Cannot open URL " + e.getMessage(), s); + throw new EaterException("Cannot open URL " + e.getMessage(), s); } } public static ReadLine getReaderInclude(SURL url, StringLocated s, Charset charset) - throws EaterExceptionLocated, UnsupportedEncodingException { + throws EaterException, UnsupportedEncodingException { final InputStream is = url.openStream(); if (is == null) - throw EaterExceptionLocated.located("Cannot open URL", s); + throw new EaterException("Cannot open URL", s); return ReadLineReader.create(new InputStreamReader(is, charset), url.toString(), s.getLocation()); } diff --git a/src/net/sourceforge/plantuml/tim/Eater.java b/src/net/sourceforge/plantuml/tim/Eater.java index 20d123720..2f5287555 100644 --- a/src/net/sourceforge/plantuml/tim/Eater.java +++ b/src/net/sourceforge/plantuml/tim/Eater.java @@ -64,19 +64,19 @@ public abstract class Eater { return stringLocated; } - public abstract void analyze(TContext context, TMemory memory) throws EaterExceptionLocated; + public abstract void analyze(TContext context, TMemory memory) throws EaterException; public int getCurrentPosition() { return i; } - final protected String eatAllToEnd() throws EaterExceptionLocated { + final protected String eatAllToEnd() throws EaterException { final String result = stringLocated.getString().substring(i); i = stringLocated.length(); return result; } - final public TValue eatExpression(TContext context, TMemory memory) throws EaterExceptionLocated { + final public TValue eatExpression(TContext context, TMemory memory) throws EaterException { final char ch = peekChar(); if (ch == '{' || ch == '[') { final String data = eatAllToEnd(); @@ -89,22 +89,22 @@ public abstract class Eater { return tokenStack.getResult(getStringLocated(), context, memory); } - final protected TokenStack eatTokenStack() throws EaterExceptionLocated { + final protected TokenStack eatTokenStack() throws EaterException { final TokenStack tokenStack = new TokenStack(); addIntoTokenStack(tokenStack, false); if (tokenStack.size() == 0) - throw EaterExceptionLocated.located("Missing expression", stringLocated); + throw new EaterException("Missing expression", stringLocated); return tokenStack; } - final protected TValue eatExpressionStopAtColon(TContext context, TMemory memory) throws EaterExceptionLocated { + final protected TValue eatExpressionStopAtColon(TContext context, TMemory memory) throws EaterException { final TokenStack tokenStack = new TokenStack(); addIntoTokenStack(tokenStack, true); return tokenStack.getResult(getStringLocated(), context, memory); } - final protected void addIntoTokenStack(TokenStack tokenStack, boolean stopAtColon) throws EaterExceptionLocated { + final protected void addIntoTokenStack(TokenStack tokenStack, boolean stopAtColon) throws EaterException { Token lastToken = null; while (true) { final Token token = TokenType.eatOneToken(lastToken, this, stopAtColon); @@ -117,10 +117,10 @@ public abstract class Eater { } } - final public String eatAndGetQuotedString() throws EaterExceptionLocated { + final public String eatAndGetQuotedString() throws EaterException { final char separator = peekChar(); if (TLineType.isQuote(separator) == false) - throw EaterExceptionLocated.located("quote10", stringLocated); + throw new EaterException("quote10", stringLocated); checkAndEatChar(separator); final StringBuilder value = new StringBuilder(); @@ -129,7 +129,7 @@ public abstract class Eater { return value.toString(); } - final protected String eatAndGetOptionalQuotedString() throws EaterExceptionLocated { + final protected String eatAndGetOptionalQuotedString() throws EaterException { final char quote = peekChar(); if (TLineType.isQuote(quote)) return eatAndGetQuotedString(); @@ -141,7 +141,7 @@ public abstract class Eater { while (true) { char ch = peekChar(); if (ch == 0) - throw EaterExceptionLocated.located("until001", stringLocated); + throw new EaterException("until001", stringLocated); if (level == 0 && (ch == ',' || ch == ')')) return value.toString().trim(); @@ -159,7 +159,7 @@ public abstract class Eater { // return value.toString(); } - final public String eatAndGetNumber() throws EaterExceptionLocated { + final public String eatAndGetNumber() throws EaterException { final StringBuilder result = new StringBuilder(); while (true) { final char ch = peekChar(); @@ -175,7 +175,7 @@ public abstract class Eater { } } - final public String eatAndGetSpaces() throws EaterExceptionLocated { + final public String eatAndGetSpaces() throws EaterException { final StringBuilder result = new StringBuilder(); while (true) { final char ch = peekChar(); @@ -186,19 +186,19 @@ public abstract class Eater { } } - final protected String eatAndGetVarname() throws EaterExceptionLocated { + final protected String eatAndGetVarname() throws EaterException { final StringBuilder varname = new StringBuilder("" + eatOneChar()); if (TLineType.isLetterOrUnderscoreOrDollar(varname.charAt(0)) == false) - throw EaterExceptionLocated.located("a002", stringLocated); + throw new EaterException("a002", stringLocated); addUpToLastLetterOrUnderscoreOrDigit(varname); return varname.toString(); } - final protected String eatAndGetFunctionName() throws EaterExceptionLocated { + final protected String eatAndGetFunctionName() throws EaterException { final StringBuilder varname = new StringBuilder("" + eatOneChar()); if (TLineType.isLetterOrUnderscoreOrDollar(varname.charAt(0)) == false) - throw EaterExceptionLocated.located("a003", stringLocated); + throw new EaterException("a003", stringLocated); addUpToLastLetterOrUnderscoreOrDigit(varname); return varname.toString(); @@ -246,14 +246,14 @@ public abstract class Eater { return ch; } - final protected void checkAndEatChar(char ch) throws EaterExceptionLocated { + final protected void checkAndEatChar(char ch) throws EaterException { if (i >= stringLocated.length() || stringLocated.charAt(i) != ch) - throw EaterExceptionLocated.located("a001", stringLocated); + throw new EaterException("a001", stringLocated); i++; } - final protected boolean safeCheckAndEatChar(char ch) throws EaterExceptionLocated { + final protected boolean safeCheckAndEatChar(char ch) throws EaterException { if (i >= stringLocated.length() || stringLocated.charAt(i) != ch) return false; @@ -261,7 +261,7 @@ public abstract class Eater { return true; } - final protected void optionallyEatChar(char ch) throws EaterExceptionLocated { + final protected void optionallyEatChar(char ch) throws EaterException { if (i >= stringLocated.length() || stringLocated.charAt(i) != ch) return; @@ -269,7 +269,7 @@ public abstract class Eater { i++; } - final protected void checkAndEatChar(String s) throws EaterExceptionLocated { + final protected void checkAndEatChar(String s) throws EaterException { for (int j = 0; j < s.length(); j++) checkAndEatChar(s.charAt(j)); @@ -298,7 +298,7 @@ public abstract class Eater { } final protected TFunctionImpl eatDeclareFunction(TContext context, TMemory memory, boolean unquoted, - StringLocated location, boolean allowNoParenthesis, TFunctionType type) throws EaterExceptionLocated { + StringLocated location, boolean allowNoParenthesis, TFunctionType type) throws EaterException { final List args = new ArrayList<>(); final String functionName = eatAndGetFunctionName(); skipSpaces(); @@ -306,7 +306,7 @@ public abstract class Eater { if (allowNoParenthesis) return new TFunctionImpl(functionName, args, unquoted, type); - throw EaterExceptionLocated.located("Missing opening parenthesis", stringLocated); + throw new EaterException("Missing opening parenthesis", stringLocated); } while (true) { skipSpaces(); @@ -331,7 +331,7 @@ public abstract class Eater { checkAndEatChar(")"); break; } else { - throw EaterExceptionLocated.located("Error in function definition", stringLocated); + throw new EaterException("Error in function definition", stringLocated); } } skipSpaces(); @@ -339,7 +339,7 @@ public abstract class Eater { } final protected TFunctionImpl eatDeclareReturnFunctionWithOptionalReturn(TContext context, TMemory memory, - boolean unquoted, StringLocated location) throws EaterExceptionLocated { + boolean unquoted, StringLocated location) throws EaterException { final TFunctionImpl result = eatDeclareFunction(context, memory, unquoted, location, false, TFunctionType.RETURN_FUNCTION); if (peekChar() == 'r') { @@ -357,7 +357,7 @@ public abstract class Eater { } final protected TFunctionImpl eatDeclareProcedure(TContext context, TMemory memory, boolean unquoted, - StringLocated location) throws EaterExceptionLocated { + StringLocated location) throws EaterException { final TFunctionImpl result = eatDeclareFunction(context, memory, unquoted, location, false, TFunctionType.PROCEDURE); return result; diff --git a/src/net/sourceforge/plantuml/tim/EaterAffectation.java b/src/net/sourceforge/plantuml/tim/EaterAffectation.java index efe99b76f..cad5ded5e 100644 --- a/src/net/sourceforge/plantuml/tim/EaterAffectation.java +++ b/src/net/sourceforge/plantuml/tim/EaterAffectation.java @@ -44,7 +44,7 @@ public class EaterAffectation extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterAffectationDefine.java b/src/net/sourceforge/plantuml/tim/EaterAffectationDefine.java index 863f3d91f..3db77f96c 100644 --- a/src/net/sourceforge/plantuml/tim/EaterAffectationDefine.java +++ b/src/net/sourceforge/plantuml/tim/EaterAffectationDefine.java @@ -44,7 +44,7 @@ public class EaterAffectationDefine extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!define"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterAssert.java b/src/net/sourceforge/plantuml/tim/EaterAssert.java index 3c34cacb1..00603e675 100644 --- a/src/net/sourceforge/plantuml/tim/EaterAssert.java +++ b/src/net/sourceforge/plantuml/tim/EaterAssert.java @@ -44,7 +44,7 @@ public class EaterAssert extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!assert"); skipSpaces(); @@ -55,9 +55,9 @@ public class EaterAssert extends Eater { if (ch == ':') { checkAndEatChar(':'); final TValue message = eatExpression(context, memory); - throw EaterExceptionLocated.located("Assertion error : " + message.toString(), getStringLocated()); + throw new EaterException("Assertion error : " + message.toString(), getStringLocated()); } - throw EaterExceptionLocated.located("Assertion error", getStringLocated()); + throw new EaterException("Assertion error", getStringLocated()); } } diff --git a/src/net/sourceforge/plantuml/tim/EaterDeclareProcedure.java b/src/net/sourceforge/plantuml/tim/EaterDeclareProcedure.java index d0cdbdd16..b26b2b425 100644 --- a/src/net/sourceforge/plantuml/tim/EaterDeclareProcedure.java +++ b/src/net/sourceforge/plantuml/tim/EaterDeclareProcedure.java @@ -48,7 +48,7 @@ public class EaterDeclareProcedure extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!"); boolean unquoted = false; diff --git a/src/net/sourceforge/plantuml/tim/EaterDeclareReturnFunction.java b/src/net/sourceforge/plantuml/tim/EaterDeclareReturnFunction.java index 84bf4c5c2..139130ed6 100644 --- a/src/net/sourceforge/plantuml/tim/EaterDeclareReturnFunction.java +++ b/src/net/sourceforge/plantuml/tim/EaterDeclareReturnFunction.java @@ -48,7 +48,7 @@ public class EaterDeclareReturnFunction extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!"); boolean unquoted = false; diff --git a/src/net/sourceforge/plantuml/tim/EaterDumpMemory.java b/src/net/sourceforge/plantuml/tim/EaterDumpMemory.java index fcf4eac86..33315178b 100644 --- a/src/net/sourceforge/plantuml/tim/EaterDumpMemory.java +++ b/src/net/sourceforge/plantuml/tim/EaterDumpMemory.java @@ -43,7 +43,7 @@ public class EaterDumpMemory extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!dump_memory"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterElseIf.java b/src/net/sourceforge/plantuml/tim/EaterElseIf.java index e83bbbf5a..85f8a1ae8 100644 --- a/src/net/sourceforge/plantuml/tim/EaterElseIf.java +++ b/src/net/sourceforge/plantuml/tim/EaterElseIf.java @@ -46,7 +46,7 @@ public class EaterElseIf extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!elseif"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterExceptionLocated.java b/src/net/sourceforge/plantuml/tim/EaterException.java similarity index 75% rename from src/net/sourceforge/plantuml/tim/EaterExceptionLocated.java rename to src/net/sourceforge/plantuml/tim/EaterException.java index 4aeb0a0da..4de83e32b 100644 --- a/src/net/sourceforge/plantuml/tim/EaterExceptionLocated.java +++ b/src/net/sourceforge/plantuml/tim/EaterException.java @@ -38,22 +38,14 @@ import java.util.Objects; import net.sourceforge.plantuml.text.StringLocated; -public class EaterExceptionLocated extends Exception { +public class EaterException extends Exception { private final String message; private final StringLocated location; - private EaterExceptionLocated(String message, StringLocated location) { - this.message = message; - this.location = location; - } - - public static EaterExceptionLocated located(String message, StringLocated location) { - return new EaterExceptionLocated(message, Objects.requireNonNull(location)); - } - - public static EaterExceptionLocated unlocated(String message, StringLocated location) { - return new EaterExceptionLocated(message, Objects.requireNonNull(location)); + public EaterException(String message, StringLocated location) { + this.message = Objects.requireNonNull(message); + this.location = Objects.requireNonNull(location); } public final String getMessage() { diff --git a/src/net/sourceforge/plantuml/tim/EaterForeach.java b/src/net/sourceforge/plantuml/tim/EaterForeach.java index c631ed8f7..37be05afc 100644 --- a/src/net/sourceforge/plantuml/tim/EaterForeach.java +++ b/src/net/sourceforge/plantuml/tim/EaterForeach.java @@ -48,7 +48,7 @@ public class EaterForeach extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!foreach"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterFunctionCall.java b/src/net/sourceforge/plantuml/tim/EaterFunctionCall.java index 767671aed..b5cc4204b 100644 --- a/src/net/sourceforge/plantuml/tim/EaterFunctionCall.java +++ b/src/net/sourceforge/plantuml/tim/EaterFunctionCall.java @@ -58,7 +58,7 @@ public class EaterFunctionCall extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipUntilChar('('); checkAndEatChar('('); skipSpaces(); @@ -119,10 +119,9 @@ public class EaterFunctionCall extends Eater { break; } if (unquoted) { - throw EaterExceptionLocated.located("unquoted function/procedure cannot use expression.", - getStringLocated()); + throw new EaterException("unquoted function/procedure cannot use expression.", getStringLocated()); } - throw EaterExceptionLocated.located("call001", getStringLocated()); + throw new EaterException("call001", getStringLocated()); } } @@ -134,7 +133,7 @@ public class EaterFunctionCall extends Eater { return Collections.unmodifiableMap(namedArguments); } - public final String getEndOfLine() throws EaterExceptionLocated { + public final String getEndOfLine() throws EaterException { return this.eatAllToEnd(); } diff --git a/src/net/sourceforge/plantuml/tim/EaterIf.java b/src/net/sourceforge/plantuml/tim/EaterIf.java index ed544cba9..f44772c48 100644 --- a/src/net/sourceforge/plantuml/tim/EaterIf.java +++ b/src/net/sourceforge/plantuml/tim/EaterIf.java @@ -46,7 +46,7 @@ public class EaterIf extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!if"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterIfdef.java b/src/net/sourceforge/plantuml/tim/EaterIfdef.java index 7173965df..b197abc20 100644 --- a/src/net/sourceforge/plantuml/tim/EaterIfdef.java +++ b/src/net/sourceforge/plantuml/tim/EaterIfdef.java @@ -48,7 +48,7 @@ public class EaterIfdef extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!ifdef"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterIfndef.java b/src/net/sourceforge/plantuml/tim/EaterIfndef.java index a79da59a6..ae9d7478f 100644 --- a/src/net/sourceforge/plantuml/tim/EaterIfndef.java +++ b/src/net/sourceforge/plantuml/tim/EaterIfndef.java @@ -46,7 +46,7 @@ public class EaterIfndef extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!ifndef"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterImport.java b/src/net/sourceforge/plantuml/tim/EaterImport.java index c292af610..3f1296de6 100644 --- a/src/net/sourceforge/plantuml/tim/EaterImport.java +++ b/src/net/sourceforge/plantuml/tim/EaterImport.java @@ -45,7 +45,7 @@ public class EaterImport extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!import"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterInclude.java b/src/net/sourceforge/plantuml/tim/EaterInclude.java index fac2806ff..cf6eb3975 100644 --- a/src/net/sourceforge/plantuml/tim/EaterInclude.java +++ b/src/net/sourceforge/plantuml/tim/EaterInclude.java @@ -47,7 +47,7 @@ public class EaterInclude extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!include"); final char peekChar = peekChar(); diff --git a/src/net/sourceforge/plantuml/tim/EaterIncludeDef.java b/src/net/sourceforge/plantuml/tim/EaterIncludeDef.java index b275c1169..6e3ce76c5 100644 --- a/src/net/sourceforge/plantuml/tim/EaterIncludeDef.java +++ b/src/net/sourceforge/plantuml/tim/EaterIncludeDef.java @@ -45,7 +45,7 @@ public class EaterIncludeDef extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!includedef"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterIncludesub.java b/src/net/sourceforge/plantuml/tim/EaterIncludesub.java index 53778e2e1..5cdb7f5c6 100644 --- a/src/net/sourceforge/plantuml/tim/EaterIncludesub.java +++ b/src/net/sourceforge/plantuml/tim/EaterIncludesub.java @@ -45,7 +45,7 @@ public class EaterIncludesub extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!includesub"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterLegacyDefine.java b/src/net/sourceforge/plantuml/tim/EaterLegacyDefine.java index bb0257003..6035a7ed6 100644 --- a/src/net/sourceforge/plantuml/tim/EaterLegacyDefine.java +++ b/src/net/sourceforge/plantuml/tim/EaterLegacyDefine.java @@ -45,7 +45,7 @@ public class EaterLegacyDefine extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!define"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterLegacyDefineLong.java b/src/net/sourceforge/plantuml/tim/EaterLegacyDefineLong.java index 3b93fbfd1..3fccd619c 100644 --- a/src/net/sourceforge/plantuml/tim/EaterLegacyDefineLong.java +++ b/src/net/sourceforge/plantuml/tim/EaterLegacyDefineLong.java @@ -45,7 +45,7 @@ public class EaterLegacyDefineLong extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!definelong"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterLog.java b/src/net/sourceforge/plantuml/tim/EaterLog.java index 53f938091..3e31b00f7 100644 --- a/src/net/sourceforge/plantuml/tim/EaterLog.java +++ b/src/net/sourceforge/plantuml/tim/EaterLog.java @@ -44,7 +44,7 @@ public class EaterLog extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!log"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterReturn.java b/src/net/sourceforge/plantuml/tim/EaterReturn.java index 58ade8267..327940207 100644 --- a/src/net/sourceforge/plantuml/tim/EaterReturn.java +++ b/src/net/sourceforge/plantuml/tim/EaterReturn.java @@ -46,7 +46,7 @@ public class EaterReturn extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!return"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterStartsub.java b/src/net/sourceforge/plantuml/tim/EaterStartsub.java index ca67a6574..5cd8207b2 100644 --- a/src/net/sourceforge/plantuml/tim/EaterStartsub.java +++ b/src/net/sourceforge/plantuml/tim/EaterStartsub.java @@ -45,13 +45,13 @@ public class EaterStartsub extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!startsub"); skipSpaces(); this.subname = eatAllToEnd(); if (this.subname.matches("\\w+") == false) - throw EaterExceptionLocated.located("Bad sub name", getStringLocated()); + throw new EaterException("Bad sub name", getStringLocated()); } diff --git a/src/net/sourceforge/plantuml/tim/EaterTheme.java b/src/net/sourceforge/plantuml/tim/EaterTheme.java index 891b101a0..7203c5521 100644 --- a/src/net/sourceforge/plantuml/tim/EaterTheme.java +++ b/src/net/sourceforge/plantuml/tim/EaterTheme.java @@ -67,7 +67,7 @@ public class EaterTheme extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!theme"); skipSpaces(); @@ -85,7 +85,7 @@ public class EaterTheme extends Eater { } - public final ReadLine getTheme() throws EaterExceptionLocated { + public final ReadLine getTheme() throws EaterException { if (from == null) { try { final ReadLine reader = ThemeUtils.getReaderTheme(realName); @@ -101,24 +101,24 @@ public class EaterTheme extends Eater { } catch (IOException e) { Logme.error(e); } - throw EaterExceptionLocated.located("Cannot load " + realName, getStringLocated()); + throw new EaterException("Cannot load " + realName, getStringLocated()); } if (from.startsWith("<") && from.endsWith(">")) { final ReadLine reader = ThemeUtils.getReaderTheme(realName, from); if (reader == null) - throw EaterExceptionLocated.located("No such theme " + realName + " in " + from, getStringLocated()); + throw new EaterException("No such theme " + realName + " in " + from, getStringLocated()); return reader; } else if (from.startsWith("http://") || from.startsWith("https://")) { final SURL url = SURL.create(ThemeUtils.getFullPath(from, realName)); if (url == null) - throw EaterExceptionLocated.located("Cannot open URL", getStringLocated()); + throw new EaterException("Cannot open URL", getStringLocated()); try { return PreprocessorUtils.getReaderInclude(url, getStringLocated(), UTF_8); } catch (UnsupportedEncodingException e) { Logme.error(e); - throw EaterExceptionLocated.located("Cannot decode charset", getStringLocated()); + throw new EaterException("Cannot decode charset", getStringLocated()); } } @@ -126,12 +126,12 @@ public class EaterTheme extends Eater { final FileWithSuffix file = context.getFileWithSuffix(from, realName); final Reader tmp = file.getReader(UTF_8); if (tmp == null) - throw EaterExceptionLocated.located("No such theme " + realName, getStringLocated()); + throw new EaterException("No such theme " + realName, getStringLocated()); return ReadLineReader.create(tmp, "theme " + realName); } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("Cannot load " + realName, getStringLocated()); + throw new EaterException("Cannot load " + realName, getStringLocated()); } } diff --git a/src/net/sourceforge/plantuml/tim/EaterUndef.java b/src/net/sourceforge/plantuml/tim/EaterUndef.java index 525644758..01e48c910 100644 --- a/src/net/sourceforge/plantuml/tim/EaterUndef.java +++ b/src/net/sourceforge/plantuml/tim/EaterUndef.java @@ -43,7 +43,7 @@ public class EaterUndef extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!undef"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/EaterWhile.java b/src/net/sourceforge/plantuml/tim/EaterWhile.java index 4b3844b87..8538d6978 100644 --- a/src/net/sourceforge/plantuml/tim/EaterWhile.java +++ b/src/net/sourceforge/plantuml/tim/EaterWhile.java @@ -46,7 +46,7 @@ public class EaterWhile extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { skipSpaces(); checkAndEatChar("!while"); skipSpaces(); diff --git a/src/net/sourceforge/plantuml/tim/ExecutionContextWhile.java b/src/net/sourceforge/plantuml/tim/ExecutionContextWhile.java index c1c6b6898..9e406e185 100644 --- a/src/net/sourceforge/plantuml/tim/ExecutionContextWhile.java +++ b/src/net/sourceforge/plantuml/tim/ExecutionContextWhile.java @@ -61,7 +61,7 @@ public class ExecutionContextWhile { } public TValue conditionValue(StringLocated location, TContext context, TMemory memory) - throws EaterExceptionLocated { + throws EaterException { return whileExpression.getResult(location, context, memory); } diff --git a/src/net/sourceforge/plantuml/tim/ExecutionContexts.java b/src/net/sourceforge/plantuml/tim/ExecutionContexts.java index 33ab5821b..f42116e1a 100644 --- a/src/net/sourceforge/plantuml/tim/ExecutionContexts.java +++ b/src/net/sourceforge/plantuml/tim/ExecutionContexts.java @@ -79,7 +79,7 @@ public abstract class ExecutionContexts { return allForeachs.pollLast(); } - public boolean areAllIfOk(TContext context, TMemory memory) throws EaterExceptionLocated { + public boolean areAllIfOk(TContext context, TMemory memory) throws EaterException { for (ExecutionContextIf conditionalContext : allIfs) if (conditionalContext.conditionIsOkHere() == false) return false; diff --git a/src/net/sourceforge/plantuml/tim/FunctionsSet.java b/src/net/sourceforge/plantuml/tim/FunctionsSet.java index b5702c62d..683d0d7fa 100644 --- a/src/net/sourceforge/plantuml/tim/FunctionsSet.java +++ b/src/net/sourceforge/plantuml/tim/FunctionsSet.java @@ -95,9 +95,9 @@ public class FunctionsSet { } public void executeLegacyDefine(TContext context, TMemory memory, StringLocated s) - throws EaterExceptionLocated { + throws EaterException { if (this.pendingFunction != null) - throw EaterExceptionLocated.located("already0048", s); + throw new EaterException("already0048", s); final EaterLegacyDefine legacyDefine = new EaterLegacyDefine(s); legacyDefine.analyze(context, memory); @@ -107,9 +107,9 @@ public class FunctionsSet { } public void executeLegacyDefineLong(TContext context, TMemory memory, StringLocated s) - throws EaterExceptionLocated { + throws EaterException { if (this.pendingFunction != null) - throw EaterExceptionLocated.located("already0068", s); + throw new EaterException("already0068", s); final EaterLegacyDefineLong legacyDefineLong = new EaterLegacyDefineLong(s); legacyDefineLong.analyze(context, memory); @@ -117,9 +117,9 @@ public class FunctionsSet { } public void executeDeclareReturnFunction(TContext context, TMemory memory, StringLocated s) - throws EaterExceptionLocated { + throws EaterException { if (this.pendingFunction != null) - throw EaterExceptionLocated.located("already0068", s); + throw new EaterException("already0068", s); final EaterDeclareReturnFunction declareFunction = new EaterDeclareReturnFunction(s); declareFunction.analyze(context, memory); @@ -127,7 +127,7 @@ public class FunctionsSet { final TFunctionSignature declaredSignature = declareFunction.getFunction().getSignature(); final TFunction previous = this.functions.get(declaredSignature); if (previous != null && (finalFlag || this.functionsFinal.contains(declaredSignature))) - throw EaterExceptionLocated.located("This function is already defined", s); + throw new EaterException("This function is already defined", s); if (finalFlag) this.functionsFinal.add(declaredSignature); @@ -140,9 +140,9 @@ public class FunctionsSet { } public void executeDeclareProcedure(TContext context, TMemory memory, StringLocated s) - throws EaterExceptionLocated { + throws EaterException { if (this.pendingFunction != null) - throw EaterExceptionLocated.located("already0068", s); + throw new EaterException("already0068", s); final EaterDeclareProcedure declareFunction = new EaterDeclareProcedure(s); declareFunction.analyze(context, memory); @@ -150,7 +150,7 @@ public class FunctionsSet { final TFunctionSignature declaredSignature = declareFunction.getFunction().getSignature(); final TFunction previous = this.functions.get(declaredSignature); if (previous != null && (finalFlag || this.functionsFinal.contains(declaredSignature))) - throw EaterExceptionLocated.located("This function is already defined", s); + throw new EaterException("This function is already defined", s); if (finalFlag) this.functionsFinal.add(declaredSignature); diff --git a/src/net/sourceforge/plantuml/tim/StringEater.java b/src/net/sourceforge/plantuml/tim/StringEater.java index e8b2825e2..818a7856d 100644 --- a/src/net/sourceforge/plantuml/tim/StringEater.java +++ b/src/net/sourceforge/plantuml/tim/StringEater.java @@ -43,7 +43,7 @@ public class StringEater extends Eater { } @Override - public void analyze(TContext context, TMemory memory) throws EaterExceptionLocated { + public void analyze(TContext context, TMemory memory) throws EaterException { throw new UnsupportedOperationException(); } diff --git a/src/net/sourceforge/plantuml/tim/TContext.java b/src/net/sourceforge/plantuml/tim/TContext.java index 86a3bb0b1..79188e5ca 100644 --- a/src/net/sourceforge/plantuml/tim/TContext.java +++ b/src/net/sourceforge/plantuml/tim/TContext.java @@ -236,7 +236,7 @@ public class TContext { public Knowledge asKnowledge(final TMemory memory, final LineLocation location) { return new Knowledge() { - public TValue getVariable(String name) throws EaterExceptionLocated { + public TValue getVariable(String name) throws EaterException { if (name.contains(".") || name.contains("[")) { final TValue result = fromJson(memory, name, location); return result; @@ -250,7 +250,7 @@ public class TContext { }; } - private TValue fromJson(TMemory memory, String name, LineLocation location) throws EaterExceptionLocated { + private TValue fromJson(TMemory memory, String name, LineLocation location) throws EaterException { final String result = applyFunctionsAndVariables(memory, new StringLocated(name, location)); try { final JsonValue json = Json.parse(result); @@ -279,7 +279,7 @@ public class TContext { } public TValue executeLines(TMemory memory, List body, TFunctionType ftype, boolean modeSpecial) - throws EaterExceptionLocated { + throws EaterException { final CodeIterator it = buildCodeIterator(memory, body); StringLocated s = null; @@ -295,7 +295,7 @@ public class TContext { } private void executeLinesInternal(TMemory memory, List body, TFunctionType ftype) - throws EaterExceptionLocated { + throws EaterException { final CodeIterator it = buildCodeIterator(memory, body); StringLocated s = null; @@ -307,20 +307,20 @@ public class TContext { } private TValue executeOneLineSafe(TMemory memory, StringLocated s, TFunctionType ftype, boolean modeSpecial) - throws EaterExceptionLocated { + throws EaterException { try { this.debug.add(s); return executeOneLineNotSafe(memory, s, ftype, modeSpecial); } catch (Exception e) { - if (e instanceof EaterExceptionLocated) - throw (EaterExceptionLocated) e; + if (e instanceof EaterException) + throw (EaterException) e; Logme.error(e); - throw EaterExceptionLocated.located("Fatal parsing error", s); + throw new EaterException("Fatal parsing error", s); } } private TValue executeOneLineNotSafe(TMemory memory, StringLocated s, TFunctionType ftype, boolean modeSpecial) - throws EaterExceptionLocated { + throws EaterException { final TLineType type = s.getType(); if (type == TLineType.INCLUDESUB) { @@ -375,11 +375,11 @@ public class TContext { } else if (s.getString().matches("^\\s+$")) { return null; } else { - throw EaterExceptionLocated.located("Compile Error " + ftype + " " + type, s); + throw new EaterException("Compile Error " + ftype + " " + type, s); } } - private void addPlain(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void addPlain(TMemory memory, StringLocated s) throws EaterException { final StringLocated tmp[] = applyFunctionsAndVariablesInternal(memory, s); if (tmp != null) { if (pendingAdd != null) { @@ -392,31 +392,31 @@ public class TContext { } } - private void simulatePlain(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void simulatePlain(TMemory memory, StringLocated s) throws EaterException { final StringLocated ignored[] = applyFunctionsAndVariablesInternal(memory, s); } - private void executeAffectationDefine(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeAffectationDefine(TMemory memory, StringLocated s) throws EaterException { new EaterAffectationDefine(s).analyze(this, memory); } - private void executeDumpMemory(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeDumpMemory(TMemory memory, StringLocated s) throws EaterException { final EaterDumpMemory condition = new EaterDumpMemory(s); condition.analyze(this, memory); } - private void executeAssert(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeAssert(TMemory memory, StringLocated s) throws EaterException { final EaterAssert condition = new EaterAssert(s); condition.analyze(this, memory); } - private void executeUndef(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeUndef(TMemory memory, StringLocated s) throws EaterException { final EaterUndef undef = new EaterUndef(s); undef.analyze(this, memory); } private StringLocated[] applyFunctionsAndVariablesInternal(TMemory memory, StringLocated located) - throws EaterExceptionLocated { + throws EaterException { if (memory.isEmpty() && functionsSet.size() == 0) return new StringLocated[] { located }; @@ -434,7 +434,7 @@ public class TContext { private String pendingAdd = null; - public String applyFunctionsAndVariables(TMemory memory, final StringLocated str) throws EaterExceptionLocated { + public String applyFunctionsAndVariables(TMemory memory, final StringLocated str) throws EaterException { // https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore%E2%80%93Horspool_algorithm // https://stackoverflow.com/questions/1326682/java-replacing-multiple-different-substring-in-a-string-at-once-or-in-the-most // https://en.wikipedia.org/wiki/String-searching_algorithm @@ -456,7 +456,7 @@ public class TContext { call.getNamedArguments().keySet()); final TFunction function = functionsSet.getFunctionSmart(signature); if (function == null) - throw EaterExceptionLocated.located("Function not found " + presentFunction, str); + throw new EaterException("Function not found " + presentFunction, str); if (function.getFunctionType() == TFunctionType.PROCEDURE) { this.pendingAdd = result.toString(); @@ -494,11 +494,11 @@ public class TContext { } private void executeVoid3(StringLocated location, TMemory memory, TFunction function, EaterFunctionCall call) - throws EaterExceptionLocated { + throws EaterException { function.executeProcedureInternal(this, memory, location, call.getValues(), call.getNamedArguments()); } - private void executeImport(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeImport(TMemory memory, StringLocated s) throws EaterException { final EaterImport _import = new EaterImport(s.getTrimmed()); _import.analyze(this, memory); @@ -511,13 +511,13 @@ public class TContext { } } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("Cannot import " + e.getMessage(), s); + throw new EaterException("Cannot import " + e.getMessage(), s); } - throw EaterExceptionLocated.located("Cannot import", s); + throw new EaterException("Cannot import", s); } - private void executeLog(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeLog(TMemory memory, StringLocated s) throws EaterException { final EaterLog log = new EaterLog(s.getTrimmed()); log.analyze(this, memory); } @@ -529,7 +529,7 @@ public class TContext { } - private void executeIncludesub(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeIncludesub(TMemory memory, StringLocated s) throws EaterException { ImportedFiles saveImportedFiles = null; try { final EaterIncludesub include = new EaterIncludesub(s.getTrimmed()); @@ -547,7 +547,7 @@ public class TContext { this.importedFiles = this.importedFiles.withCurrentDir(f2.getParentFile()); final Reader reader = f2.getReader(charset); if (reader == null) - throw EaterExceptionLocated.located("cannot include " + what, s); + throw new EaterException("cannot include " + what, s); try { ReadLine readerline = ReadLineReader.create(reader, what, s.getLocation()); @@ -559,14 +559,14 @@ public class TContext { } } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("cannot include " + what, s); + throw new EaterException("cannot include " + what, s); } } if (sub == null) sub = subs.get(what); if (sub == null) - throw EaterExceptionLocated.located("cannot include " + what, s); + throw new EaterException("cannot include " + what, s); executeLinesInternal(memory, sub.lines(), null); } finally { @@ -576,7 +576,7 @@ public class TContext { } } - private void executeIncludeDef(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeIncludeDef(TMemory memory, StringLocated s) throws EaterException { final EaterIncludeDef include = new EaterIncludeDef(s.getTrimmed()); include.analyze(this, memory); final String definitionName = include.getLocation(); @@ -595,7 +595,7 @@ public class TContext { } while (true); } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("" + e, s); + throw new EaterException("" + e, s); } finally { try { reader2.close(); @@ -605,12 +605,12 @@ public class TContext { } } - private void executeTheme(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeTheme(TMemory memory, StringLocated s) throws EaterException { final EaterTheme eater = new EaterTheme(s.getTrimmed(), importedFiles); eater.analyze(this, memory); final ReadLine reader = eater.getTheme(); if (reader == null) - throw EaterExceptionLocated.located("No such theme " + eater.getName(), s); + throw new EaterException("No such theme " + eater.getName(), s); try { final List body = new ArrayList<>(); @@ -624,7 +624,7 @@ public class TContext { } while (true); } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("Error reading theme " + e, s); + throw new EaterException("Error reading theme " + e, s); } finally { try { reader.close(); @@ -634,7 +634,7 @@ public class TContext { } } - private void executeInclude(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeInclude(TMemory memory, StringLocated s) throws EaterException { final EaterInclude include = new EaterInclude(s.getTrimmed()); include.analyze(this, memory); String location = include.getWhat(); @@ -652,7 +652,7 @@ public class TContext { if (location.startsWith("http://") || location.startsWith("https://")) { final SURL url = SURL.create(location); if (url == null) - throw EaterExceptionLocated.located("Cannot open URL", s); + throw new EaterException("Cannot open URL", s); reader = PreprocessorUtils.getReaderIncludeUrl(url, s, suf, charset); } else if (location.startsWith("<") && location.endsWith(">")) { @@ -668,14 +668,14 @@ public class TContext { return; if (strategy == PreprocessorIncludeStrategy.ONCE && filesUsedCurrent.contains(f2)) - throw EaterExceptionLocated.located("This file has already been included", s); + throw new EaterException("This file has already been included", s); if (StartDiagramExtractReader.containsStartDiagram(f2, s, charset)) { reader = StartDiagramExtractReader.build(f2, s, charset); } else { final Reader tmp = f2.getReader(charset); if (tmp == null) - throw EaterExceptionLocated.located("Cannot include file", s); + throw new EaterException("Cannot include file", s); reader = ReadLineReader.create(tmp, location, s.getLocation()); } @@ -704,7 +704,7 @@ public class TContext { } } catch (IOException e) { Logme.error(e); - throw EaterExceptionLocated.located("cannot include " + e, s); + throw new EaterException("cannot include " + e, s); } finally { if (reader != null) { try { @@ -715,7 +715,7 @@ public class TContext { } } - throw EaterExceptionLocated.located("cannot include " + location, s); + throw new EaterException("cannot include " + location, s); } public boolean isLegacyDefine(String functionName) { diff --git a/src/net/sourceforge/plantuml/tim/TFunction.java b/src/net/sourceforge/plantuml/tim/TFunction.java index f8032a23e..3570bfbea 100644 --- a/src/net/sourceforge/plantuml/tim/TFunction.java +++ b/src/net/sourceforge/plantuml/tim/TFunction.java @@ -50,10 +50,10 @@ public interface TFunction { public TFunctionType getFunctionType(); public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List args, - Map named) throws EaterExceptionLocated; + Map named) throws EaterException; public void executeProcedureInternal(TContext context, TMemory memory, StringLocated location, List args, - Map named) throws EaterExceptionLocated; + Map named) throws EaterException; public boolean isUnquoted(); diff --git a/src/net/sourceforge/plantuml/tim/TFunctionImpl.java b/src/net/sourceforge/plantuml/tim/TFunctionImpl.java index eb36bbb3e..bf51f7064 100644 --- a/src/net/sourceforge/plantuml/tim/TFunctionImpl.java +++ b/src/net/sourceforge/plantuml/tim/TFunctionImpl.java @@ -121,19 +121,18 @@ public class TFunctionImpl implements TFunction { return "FUNCTION " + signature + " " + args; } - public void addBody(StringLocated s) throws EaterExceptionLocated { + public void addBody(StringLocated s) throws EaterException { body.add(s); if (s.getType() == TLineType.RETURN) { this.containsReturn = true; if (functionType == TFunctionType.PROCEDURE) - throw EaterExceptionLocated - .located("A procedure cannot have !return directive. Declare it as a function instead ?", s); + throw new EaterException("A procedure cannot have !return directive. Declare it as a function instead ?", s); } } @Override public void executeProcedureInternal(TContext context, TMemory memory, StringLocated location, List args, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { if (functionType != TFunctionType.PROCEDURE && functionType != TFunctionType.LEGACY_DEFINELONG) throw new IllegalStateException(); @@ -143,24 +142,23 @@ public class TFunctionImpl implements TFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List args, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { if (functionType == TFunctionType.LEGACY_DEFINE) return executeReturnLegacyDefine(location.getLocation(), context, memory, args); if (functionType != TFunctionType.RETURN_FUNCTION) - throw EaterExceptionLocated.unlocated("Illegal call here. Is there a return directive in your function?", - location); + throw new EaterException("Illegal call here. Is there a return directive in your function?", location); final TMemory copy = getNewMemory(memory, args, named); final TValue result = context.executeLines(copy, body, TFunctionType.RETURN_FUNCTION, true); if (result == null) - throw EaterExceptionLocated.unlocated("No return directive found in your function", location); + throw new EaterException("No return directive found in your function", location); return result; } private TValue executeReturnLegacyDefine(LineLocation location, TContext context, TMemory memory, List args) - throws EaterExceptionLocated { + throws EaterException { if (legacyDefinition == null) throw new IllegalStateException(); diff --git a/src/net/sourceforge/plantuml/tim/TMemory.java b/src/net/sourceforge/plantuml/tim/TMemory.java index cf89df812..466b5951b 100644 --- a/src/net/sourceforge/plantuml/tim/TMemory.java +++ b/src/net/sourceforge/plantuml/tim/TMemory.java @@ -45,7 +45,7 @@ public interface TMemory { public TValue getVariable(String varname); public void putVariable(String varname, TValue value, TVariableScope scope, StringLocated location) - throws EaterExceptionLocated; + throws EaterException; public void removeVariable(String varname); @@ -59,7 +59,7 @@ public interface TMemory { public ExecutionContextIf peekIf(); - public boolean areAllIfOk(TContext context, TMemory memory) throws EaterExceptionLocated; + public boolean areAllIfOk(TContext context, TMemory memory) throws EaterException; public void addIf(ExecutionContextIf context); diff --git a/src/net/sourceforge/plantuml/tim/TMemoryGlobal.java b/src/net/sourceforge/plantuml/tim/TMemoryGlobal.java index f8d5aaec3..86629e910 100644 --- a/src/net/sourceforge/plantuml/tim/TMemoryGlobal.java +++ b/src/net/sourceforge/plantuml/tim/TMemoryGlobal.java @@ -73,10 +73,10 @@ public class TMemoryGlobal extends ExecutionContexts implements TMemory { @Override public void putVariable(String varname, TValue value, TVariableScope scope, StringLocated location) - throws EaterExceptionLocated { + throws EaterException { Log.info("[MemGlobal] Setting " + varname); if (scope == TVariableScope.LOCAL) - throw EaterExceptionLocated.unlocated("Cannot use local variable here", location); + throw new EaterException("Cannot use local variable here", location); this.globalVariables.put(varname, value); this.variables.add(varname); diff --git a/src/net/sourceforge/plantuml/tim/TMemoryLocal.java b/src/net/sourceforge/plantuml/tim/TMemoryLocal.java index 4271d6e36..2603e1d0d 100644 --- a/src/net/sourceforge/plantuml/tim/TMemoryLocal.java +++ b/src/net/sourceforge/plantuml/tim/TMemoryLocal.java @@ -79,7 +79,7 @@ public class TMemoryLocal extends ExecutionContexts implements TMemory { @Override public void putVariable(String varname, TValue value, TVariableScope scope, StringLocated location) - throws EaterExceptionLocated { + throws EaterException { if (scope == TVariableScope.GLOBAL) { memoryGlobal.putVariable(varname, value, scope, location); return; diff --git a/src/net/sourceforge/plantuml/tim/TimLoader.java b/src/net/sourceforge/plantuml/tim/TimLoader.java index 09962e007..1dcdd9670 100644 --- a/src/net/sourceforge/plantuml/tim/TimLoader.java +++ b/src/net/sourceforge/plantuml/tim/TimLoader.java @@ -57,7 +57,7 @@ public class TimLoader { this.context = new TContext(importedFiles, defines, charset, definitionsContainer); try { defines.copyTo(global, location); - } catch (EaterExceptionLocated e) { + } catch (EaterException e) { Logme.error(e); } } @@ -66,7 +66,7 @@ public class TimLoader { // CodeIteratorImpl.indentNow(list); try { context.executeLines(global, list, null, false); - } catch (EaterExceptionLocated e) { + } catch (EaterException e) { context.getResultList().add(e.getLocation().withErrorPreprocessor(e.getMessage())); changeLastLine(context.getDebug(), e.getMessage()); this.preprocessorError = true; diff --git a/src/net/sourceforge/plantuml/tim/VariableManager.java b/src/net/sourceforge/plantuml/tim/VariableManager.java index d8fc019ac..c2a7aed7c 100644 --- a/src/net/sourceforge/plantuml/tim/VariableManager.java +++ b/src/net/sourceforge/plantuml/tim/VariableManager.java @@ -53,7 +53,7 @@ public class VariableManager { this.location = location; } - public int replaceVariables(String str, int i, StringBuilder result) throws EaterExceptionLocated { + public int replaceVariables(String str, int i, StringBuilder result) throws EaterException { final String presentVariable = getVarnameAt(str, i); if (result.toString().endsWith("##")) result.setLength(result.length() - 2); @@ -80,7 +80,7 @@ public class VariableManager { return i; } - private int replaceJson(JsonValue jsonValue, String str, int i, StringBuilder result) throws EaterExceptionLocated { + private int replaceJson(JsonValue jsonValue, String str, int i, StringBuilder result) throws EaterException { while (i < str.length()) { final char n = str.charAt(i); if (n == '.') { @@ -118,11 +118,11 @@ public class VariableManager { } else if (jsonValue instanceof JsonObject) { jsonValue = ((JsonObject) jsonValue).get(nbString); } else { - throw EaterExceptionLocated.unlocated("Major parsing error", location); + throw new EaterException("Major parsing error", location); } if (jsonValue == null) - throw EaterExceptionLocated.unlocated("Data parsing error", location); + throw new EaterException("Data parsing error", location); i++; } else { diff --git a/src/net/sourceforge/plantuml/tim/expression/Knowledge.java b/src/net/sourceforge/plantuml/tim/expression/Knowledge.java index b2fdb753d..1ca3fba7b 100644 --- a/src/net/sourceforge/plantuml/tim/expression/Knowledge.java +++ b/src/net/sourceforge/plantuml/tim/expression/Knowledge.java @@ -34,13 +34,13 @@ */ package net.sourceforge.plantuml.tim.expression; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.TFunctionSignature; public interface Knowledge { - public TValue getVariable(String name) throws EaterExceptionLocated; + public TValue getVariable(String name) throws EaterException; public TFunction getFunction(TFunctionSignature signature); diff --git a/src/net/sourceforge/plantuml/tim/expression/ReversePolishInterpretor.java b/src/net/sourceforge/plantuml/tim/expression/ReversePolishInterpretor.java index 67996cc69..7d4aff50f 100644 --- a/src/net/sourceforge/plantuml/tim/expression/ReversePolishInterpretor.java +++ b/src/net/sourceforge/plantuml/tim/expression/ReversePolishInterpretor.java @@ -41,7 +41,7 @@ import java.util.Deque; import java.util.List; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.TFunctionSignature; @@ -53,7 +53,7 @@ public class ReversePolishInterpretor { private final boolean trace = false; public ReversePolishInterpretor(StringLocated location, TokenStack queue, Knowledge knowledge, TMemory memory, - TContext context) throws EaterExceptionLocated { + TContext context) throws EaterException { final Deque stack = new ArrayDeque<>(); if (trace) @@ -73,7 +73,7 @@ public class ReversePolishInterpretor { final TValue v1 = stack.removeFirst(); final TokenOperator op = token.getTokenOperator(); if (op == null) - throw EaterExceptionLocated.unlocated("bad op", location); + throw new EaterException("bad op", location); final TValue tmp = op.operate(v1, v2); stack.addFirst(tmp); @@ -81,7 +81,7 @@ public class ReversePolishInterpretor { final int nb = Integer.parseInt(token.getSurface()); final Token token2 = it.nextToken(); if (token2.getTokenType() != TokenType.FUNCTION_NAME) - throw EaterExceptionLocated.unlocated("rpn43", location); + throw new EaterException("rpn43", location); if (trace) System.err.println("token2=" + token2); @@ -89,11 +89,10 @@ public class ReversePolishInterpretor { if (trace) System.err.println("function=" + function); if (function == null) - throw EaterExceptionLocated.unlocated("Unknown built-in function " + token2.getSurface(), location); + throw new EaterException("Unknown built-in function " + token2.getSurface(), location); if (function.canCover(nb, Collections.emptySet()) == false) - throw EaterExceptionLocated.unlocated( - "Bad number of arguments for " + function.getSignature().getFunctionName(), location); + throw new EaterException("Bad number of arguments for " + function.getSignature().getFunctionName(), location); final List args = new ArrayList<>(); for (int i = 0; i < nb; i++) @@ -102,7 +101,7 @@ public class ReversePolishInterpretor { if (trace) System.err.println("args=" + args); if (location == null) - throw EaterExceptionLocated.unlocated("rpn44", location); + throw new EaterException("rpn44", location); final TValue r = function.executeReturnFunction(context, memory, location, args, Collections.emptyMap()); @@ -110,7 +109,7 @@ public class ReversePolishInterpretor { System.err.println("r=" + r); stack.addFirst(r); } else { - throw EaterExceptionLocated.unlocated("rpn41", location); + throw new EaterException("rpn41", location); } } result = stack.removeFirst(); diff --git a/src/net/sourceforge/plantuml/tim/expression/ShuntingYard.java b/src/net/sourceforge/plantuml/tim/expression/ShuntingYard.java index 45ee8e008..fb75931c5 100644 --- a/src/net/sourceforge/plantuml/tim/expression/ShuntingYard.java +++ b/src/net/sourceforge/plantuml/tim/expression/ShuntingYard.java @@ -38,7 +38,7 @@ import java.util.ArrayDeque; import java.util.Deque; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; // https://en.wikipedia.org/wiki/Shunting-yard_algorithm // https://en.cppreference.com/w/c/language/operator_precedence @@ -58,7 +58,7 @@ public class ShuntingYard { System.err.println(""); } - public ShuntingYard(TokenIterator it, Knowledge knowledge, StringLocated location) throws EaterExceptionLocated { + public ShuntingYard(TokenIterator it, Knowledge knowledge, StringLocated location) throws EaterException { while (it.hasMoreTokens()) { final Token token = it.nextToken(); @@ -74,7 +74,7 @@ public class ShuntingYard { final TValue variable = knowledge.getVariable(name); if (variable == null) { if (isVariableName(name) == false) - throw EaterExceptionLocated.unlocated("Parsing syntax error about " + name, location); + throw new EaterException("Parsing syntax error about " + name, location); ouputQueue.add(new Token(name, TokenType.QUOTED_STRING, null)); } else { diff --git a/src/net/sourceforge/plantuml/tim/expression/TokenStack.java b/src/net/sourceforge/plantuml/tim/expression/TokenStack.java index bed0e451d..e94574dab 100644 --- a/src/net/sourceforge/plantuml/tim/expression/TokenStack.java +++ b/src/net/sourceforge/plantuml/tim/expression/TokenStack.java @@ -44,7 +44,7 @@ import java.util.Map; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.tim.Eater; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TMemory; @@ -86,7 +86,7 @@ public class TokenStack { return result; } - static public TokenStack eatUntilCloseParenthesisOrComma(Eater eater) throws EaterExceptionLocated { + static public TokenStack eatUntilCloseParenthesisOrComma(Eater eater) throws EaterException { final TokenStack result = new TokenStack(); int level = 0; Token lastToken = null; @@ -94,7 +94,7 @@ public class TokenStack { eater.skipSpaces(); final char ch = eater.peekChar(); if (ch == 0) - throw EaterExceptionLocated.unlocated("until001", eater.getStringLocated()); + throw new EaterException("until001", eater.getStringLocated()); if (level == 0 && (ch == ',' || ch == ')')) return result; @@ -113,12 +113,12 @@ public class TokenStack { } static public void eatUntilCloseParenthesisOrComma(TokenIterator it, StringLocated location) - throws EaterExceptionLocated { + throws EaterException { int level = 0; while (true) { final Token ch = it.peekToken(); if (ch == null) - throw EaterExceptionLocated.unlocated("until002", location); + throw new EaterException("until002", location); final TokenType typech = ch.getTokenType(); if (level == 0 && (typech == TokenType.COMMA || typech == TokenType.CLOSE_PAREN_MATH) @@ -135,7 +135,7 @@ public class TokenStack { } } - private int countFunctionArg(TokenIterator it, StringLocated location) throws EaterExceptionLocated { + private int countFunctionArg(TokenIterator it, StringLocated location) throws EaterException { // return 42; final TokenType type1 = it.peekToken().getTokenType(); if (type1 == TokenType.CLOSE_PAREN_MATH || type1 == TokenType.CLOSE_PAREN_FUNC) @@ -151,13 +151,13 @@ public class TokenStack { else if (type == TokenType.COMMA) result++; else - throw EaterExceptionLocated.unlocated("count13", location); + throw new EaterException("count13", location); } - throw EaterExceptionLocated.unlocated("count12", location); + throw new EaterException("count12", location); } - public void guessFunctions(StringLocated location) throws EaterExceptionLocated { + public void guessFunctions(StringLocated location) throws EaterException { final Deque open = new ArrayDeque<>(); final Map parens = new HashMap(); for (int i = 0; i < tokens.size(); i++) { @@ -210,7 +210,7 @@ public class TokenStack { return new InternalIterator(); } - public TValue getResult(StringLocated location, TContext context, TMemory memory) throws EaterExceptionLocated { + public TValue getResult(StringLocated location, TContext context, TMemory memory) throws EaterException { final Knowledge knowledge = context.asKnowledge(memory, location.getLocation()); final TokenStack tmp = withoutSpace(); tmp.guessFunctions(location); diff --git a/src/net/sourceforge/plantuml/tim/expression/TokenType.java b/src/net/sourceforge/plantuml/tim/expression/TokenType.java index bdb7c445f..41c0fc7ef 100644 --- a/src/net/sourceforge/plantuml/tim/expression/TokenType.java +++ b/src/net/sourceforge/plantuml/tim/expression/TokenType.java @@ -36,7 +36,7 @@ package net.sourceforge.plantuml.tim.expression; import net.sourceforge.plantuml.text.TLineType; import net.sourceforge.plantuml.tim.Eater; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public enum TokenType { // ::remove folder when __HAXE__ @@ -78,7 +78,7 @@ public enum TokenType { } final static public Token eatOneToken(Token lastToken, Eater eater, boolean manageColon) - throws EaterExceptionLocated { + throws EaterException { char ch = eater.peekChar(); if (ch == 0) return null; @@ -122,7 +122,7 @@ public enum TokenType { return true; } - static private String eatAndGetTokenPlainText(Eater eater) throws EaterExceptionLocated { + static private String eatAndGetTokenPlainText(Eater eater) throws EaterException { final StringBuilder result = new StringBuilder(); while (true) { final char ch = eater.peekChar(); diff --git a/src/net/sourceforge/plantuml/tim/iterator/AbstractCodeIterator.java b/src/net/sourceforge/plantuml/tim/iterator/AbstractCodeIterator.java index e01a9707c..51fbdfad5 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/AbstractCodeIterator.java +++ b/src/net/sourceforge/plantuml/tim/iterator/AbstractCodeIterator.java @@ -35,7 +35,7 @@ package net.sourceforge.plantuml.tim.iterator; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public abstract class AbstractCodeIterator implements CodeIterator { @@ -46,7 +46,7 @@ public abstract class AbstractCodeIterator implements CodeIterator { } @Override - public void next() throws EaterExceptionLocated { + public void next() throws EaterException { source.next(); } @@ -57,7 +57,7 @@ public abstract class AbstractCodeIterator implements CodeIterator { @Override final public void jumpToCodePosition(CodePosition newPosition, StringLocated location) - throws EaterExceptionLocated { + throws EaterException { source.jumpToCodePosition(newPosition, location); } diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIterator.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIterator.java index f6c613a00..401102893 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIterator.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIterator.java @@ -35,17 +35,17 @@ package net.sourceforge.plantuml.tim.iterator; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public interface CodeIterator { // ::remove folder when __HAXE__ - public StringLocated peek() throws EaterExceptionLocated; + public StringLocated peek() throws EaterException; - public void next() throws EaterExceptionLocated; + public void next() throws EaterException; public CodePosition getCodePosition(); - public void jumpToCodePosition(CodePosition newPosition, StringLocated location) throws EaterExceptionLocated; + public void jumpToCodePosition(CodePosition newPosition, StringLocated location) throws EaterException; } diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorAffectation.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorAffectation.java index bb341c11e..8bd3a2b4f 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorAffectation.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorAffectation.java @@ -40,7 +40,7 @@ import net.sourceforge.plantuml.json.ParseException; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; import net.sourceforge.plantuml.tim.EaterAffectation; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class CodeIteratorAffectation extends AbstractCodeIterator { } @Override - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { final StringLocated result = source.peek(); if (result == null) { @@ -74,7 +74,7 @@ public class CodeIteratorAffectation extends AbstractCodeIterator { } } - private void doAffectation(StringLocated result) throws EaterExceptionLocated { + private void doAffectation(StringLocated result) throws EaterException { int lastLocation = -1; for (int i = 0; i < 9999; i++) try { @@ -82,7 +82,7 @@ public class CodeIteratorAffectation extends AbstractCodeIterator { return; } catch (ParseException e) { if (e.getColumn() <= lastLocation) - throw EaterExceptionLocated.located("Error in JSON format", result); + throw new EaterException("Error in JSON format", result); lastLocation = e.getColumn(); next(); @@ -92,7 +92,7 @@ public class CodeIteratorAffectation extends AbstractCodeIterator { } private void executeAffectation(TContext context, TMemory memory, StringLocated s) - throws EaterExceptionLocated { + throws EaterException { new EaterAffectation(s).analyze(context, memory); } diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorForeach.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorForeach.java index d6cb73027..2ea2ef990 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorForeach.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorForeach.java @@ -39,7 +39,7 @@ import java.util.List; import net.sourceforge.plantuml.json.JsonValue; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.EaterForeach; import net.sourceforge.plantuml.tim.ExecutionContextForeach; import net.sourceforge.plantuml.tim.TContext; @@ -60,7 +60,7 @@ public class CodeIteratorForeach extends AbstractCodeIterator { this.logs = logs; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { int level = 0; while (true) { final StringLocated result = source.peek(); @@ -90,7 +90,7 @@ public class CodeIteratorForeach extends AbstractCodeIterator { } else if (result.getType() == TLineType.ENDFOREACH) { logs.add(result); if (foreach == null) - throw EaterExceptionLocated.located("No foreach related to this endforeach", result); + throw new EaterException("No foreach related to this endforeach", result); foreach.inc(); if (foreach.isSkipMe()) { @@ -107,7 +107,7 @@ public class CodeIteratorForeach extends AbstractCodeIterator { } } - private void executeForeach(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeForeach(TMemory memory, StringLocated s) throws EaterException { final EaterForeach condition = new EaterForeach(s); condition.analyze(context, memory); final ExecutionContextForeach foreach = ExecutionContextForeach.fromValue(condition.getVarname(), @@ -121,7 +121,7 @@ public class CodeIteratorForeach extends AbstractCodeIterator { } private void setLoopVariable(TMemory memory, ExecutionContextForeach foreach, StringLocated position) - throws EaterExceptionLocated { + throws EaterException { final JsonValue first = foreach.getJsonArray().get(foreach.currentIndex()); memory.putVariable(foreach.getVarname(), TValue.fromJson(first), TVariableScope.GLOBAL, position); } diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorIf.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorIf.java index f36954d28..831726ecc 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorIf.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorIf.java @@ -39,7 +39,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; import net.sourceforge.plantuml.tim.EaterElseIf; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.EaterIf; import net.sourceforge.plantuml.tim.EaterIfdef; import net.sourceforge.plantuml.tim.EaterIfndef; @@ -60,7 +60,7 @@ public class CodeIteratorIf extends AbstractCodeIterator { this.logs = logs; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { final StringLocated result = source.peek(); if (result == null) { @@ -106,17 +106,17 @@ public class CodeIteratorIf extends AbstractCodeIterator { } } - private void executeIf(TContext context, TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeIf(TContext context, TMemory memory, StringLocated s) throws EaterException { final EaterIf condition = new EaterIf(s); condition.analyze(context, memory); final boolean isTrue = condition.isTrue(); memory.addIf(ExecutionContextIf.fromValue(isTrue)); } - private void executeElseIf(TContext context, TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeElseIf(TContext context, TMemory memory, StringLocated s) throws EaterException { final ExecutionContextIf poll = (ExecutionContextIf) memory.peekIf(); if (poll == null) - throw EaterExceptionLocated.located("No if related to this else", s); + throw new EaterException("No if related to this else", s); poll.enteringElseIf(); if (poll.hasBeenBurn() == false) { @@ -129,32 +129,32 @@ public class CodeIteratorIf extends AbstractCodeIterator { } } - private void executeIfdef(TContext context, TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeIfdef(TContext context, TMemory memory, StringLocated s) throws EaterException { final EaterIfdef condition = new EaterIfdef(s); condition.analyze(context, memory); final boolean isTrue = condition.isTrue(context, memory); memory.addIf(ExecutionContextIf.fromValue(isTrue)); } - private void executeIfndef(TContext context, TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeIfndef(TContext context, TMemory memory, StringLocated s) throws EaterException { final EaterIfndef condition = new EaterIfndef(s); condition.analyze(context, memory); final boolean isTrue = condition.isTrue(context, memory); memory.addIf(ExecutionContextIf.fromValue(isTrue)); } - private void executeElse(TContext context, TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeElse(TContext context, TMemory memory, StringLocated s) throws EaterException { final ExecutionContextIf poll = (ExecutionContextIf) memory.peekIf(); if (poll == null) - throw EaterExceptionLocated.located("No if related to this else", s); + throw new EaterException("No if related to this else", s); poll.nowInElse(); } - private void executeEndif(TContext context, TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeEndif(TContext context, TMemory memory, StringLocated s) throws EaterException { final ExecutionContextIf poll = (ExecutionContextIf) memory.pollIf(); if (poll == null) - throw EaterExceptionLocated.located("No if related to this endif", s); + throw new EaterException("No if related to this endif", s); } diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorImpl.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorImpl.java index c1bbd51a7..07dead5aa 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorImpl.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorImpl.java @@ -37,7 +37,7 @@ package net.sourceforge.plantuml.tim.iterator; import java.util.List; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public class CodeIteratorImpl implements CodeIterator { @@ -89,10 +89,10 @@ public class CodeIteratorImpl implements CodeIterator { } @Override - public void jumpToCodePosition(CodePosition newPosition, StringLocated location) throws EaterExceptionLocated { + public void jumpToCodePosition(CodePosition newPosition, StringLocated location) throws EaterException { this.countJump++; if (this.countJump > 999) - throw EaterExceptionLocated.unlocated("Infinite loop?", location); + throw new EaterException("Infinite loop?", location); final Position pos = (Position) newPosition; this.current = pos.pos; diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorInnerComment.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorInnerComment.java index fe5a2d094..501bd9b4e 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorInnerComment.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorInnerComment.java @@ -35,7 +35,7 @@ package net.sourceforge.plantuml.tim.iterator; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public class CodeIteratorInnerComment extends AbstractCodeIterator { @@ -43,7 +43,7 @@ public class CodeIteratorInnerComment extends AbstractCodeIterator { super(source); } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { final StringLocated result = source.peek(); if (result == null) { return null; diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLegacyDefine.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLegacyDefine.java index 13709df73..fb4a99f75 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLegacyDefine.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLegacyDefine.java @@ -38,7 +38,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.FunctionsSet; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TMemory; @@ -60,7 +60,7 @@ public class CodeIteratorLegacyDefine extends AbstractCodeIterator { this.memory = memory; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { final StringLocated result = source.peek(); if (result == null) { diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLongComment.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLongComment.java index cc92cf384..656cf882d 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLongComment.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorLongComment.java @@ -38,7 +38,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public class CodeIteratorLongComment extends AbstractCodeIterator { @@ -49,7 +49,7 @@ public class CodeIteratorLongComment extends AbstractCodeIterator { this.logs = logs; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { if (source.peek() == null) { return null; diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorProcedure.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorProcedure.java index 1b4be2503..ba88da272 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorProcedure.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorProcedure.java @@ -38,7 +38,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.FunctionsSet; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionType; @@ -61,7 +61,7 @@ public class CodeIteratorProcedure extends AbstractCodeIterator { this.memory = memory; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { final StringLocated result = source.peek(); if (result == null) { diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorReturnFunction.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorReturnFunction.java index 791abad71..b3c628fa1 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorReturnFunction.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorReturnFunction.java @@ -38,7 +38,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.FunctionsSet; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionType; @@ -61,7 +61,7 @@ public class CodeIteratorReturnFunction extends AbstractCodeIterator { this.memory = memory; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { final StringLocated result = source.peek(); if (result == null) { @@ -73,9 +73,7 @@ public class CodeIteratorReturnFunction extends AbstractCodeIterator { logs.add(result); if (result.getType() == TLineType.END_FUNCTION) { if (functionsSet.pendingFunction().doesContainReturn() == false) { - throw EaterExceptionLocated.located( - "This function does not have any !return directive. Declare it as a procedure instead ?", - result); + throw new EaterException("This function does not have any !return directive. Declare it as a procedure instead ?", result); } functionsSet.executeEndfunction(); } else { diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorShortComment.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorShortComment.java index f57bcab66..0b36e2374 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorShortComment.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorShortComment.java @@ -38,7 +38,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; public class CodeIteratorShortComment extends AbstractCodeIterator { @@ -49,7 +49,7 @@ public class CodeIteratorShortComment extends AbstractCodeIterator { this.logs = logs; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { while (true) { final StringLocated result = source.peek(); if (result == null) { diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorSub.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorSub.java index 1c28d1199..248f200f8 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorSub.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorSub.java @@ -40,7 +40,7 @@ import java.util.Map; import net.sourceforge.plantuml.preproc.Sub; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.EaterStartsub; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TMemory; @@ -65,7 +65,7 @@ public class CodeIteratorSub extends AbstractCodeIterator { return Collections.unmodifiableMap(subs); } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { if (readingInProgress != null) return readingInProgress.peek(); @@ -82,7 +82,7 @@ public class CodeIteratorSub extends AbstractCodeIterator { StringLocated s = null; while ((s = source.peek()) != null) { if (s.getType() == TLineType.STARTSUB) { - throw EaterExceptionLocated.located("Cannot nest sub", result); + throw new EaterException("Cannot nest sub", result); } else if (s.getType() == TLineType.ENDSUB) { source.next(); readingInProgress = new CodeIteratorImpl(created.lines()); @@ -100,7 +100,7 @@ public class CodeIteratorSub extends AbstractCodeIterator { } @Override - public void next() throws EaterExceptionLocated { + public void next() throws EaterException { if (readingInProgress == null) { source.next(); return; diff --git a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorWhile.java b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorWhile.java index db912021e..68679b1d3 100644 --- a/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorWhile.java +++ b/src/net/sourceforge/plantuml/tim/iterator/CodeIteratorWhile.java @@ -38,7 +38,7 @@ import java.util.List; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.text.TLineType; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.EaterWhile; import net.sourceforge.plantuml.tim.ExecutionContextWhile; import net.sourceforge.plantuml.tim.TContext; @@ -59,7 +59,7 @@ public class CodeIteratorWhile extends AbstractCodeIterator { this.logs = logs; } - public StringLocated peek() throws EaterExceptionLocated { + public StringLocated peek() throws EaterException { int level = 0; while (true) { final StringLocated result = source.peek(); @@ -89,7 +89,7 @@ public class CodeIteratorWhile extends AbstractCodeIterator { } else if (result.getType() == TLineType.ENDWHILE) { logs.add(result); if (currentWhile == null) - throw EaterExceptionLocated.located("No while related to this endwhile", result); + throw new EaterException("No while related to this endwhile", result); final TValue value = currentWhile.conditionValue(result, context, memory); if (value.toBoolean()) @@ -105,7 +105,7 @@ public class CodeIteratorWhile extends AbstractCodeIterator { } } - private void executeWhile(TMemory memory, StringLocated s) throws EaterExceptionLocated { + private void executeWhile(TMemory memory, StringLocated s) throws EaterException { final EaterWhile condition = new EaterWhile(s); condition.analyze(context, memory); final TokenStack whileExpression = condition.getWhileExpression(); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/AlwaysFalse.java b/src/net/sourceforge/plantuml/tim/stdlib/AlwaysFalse.java index 5991d486e..29b116da7 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/AlwaysFalse.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/AlwaysFalse.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class AlwaysFalse extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { return TValue.fromBoolean(false); } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/AlwaysTrue.java b/src/net/sourceforge/plantuml/tim/stdlib/AlwaysTrue.java index d9cf561e0..e59c5e0f6 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/AlwaysTrue.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/AlwaysTrue.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class AlwaysTrue extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { return TValue.fromBoolean(true); } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/CallUserFunction.java b/src/net/sourceforge/plantuml/tim/stdlib/CallUserFunction.java index 6268cf54e..36bbdf7c1 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/CallUserFunction.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/CallUserFunction.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.TFunctionSignature; @@ -59,13 +59,13 @@ public class CallUserFunction extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String fname = values.get(0).toString(); final List args = values.subList(1, values.size()); final TFunctionSignature signature = new TFunctionSignature(fname, args.size()); final TFunction func = context.getFunctionSmart(signature); if (func == null) - throw EaterExceptionLocated.unlocated("Cannot find void function " + fname, location); + throw new EaterException("Cannot find void function " + fname, location); return func.executeReturnFunction(context, memory, location, args, named); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Chr.java b/src/net/sourceforge/plantuml/tim/stdlib/Chr.java index 3dcbfc7d9..fb55e335a 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Chr.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Chr.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Chr extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { try { final String value = String.valueOf(Character.toChars(values.get(0).toInt())); return TValue.fromString(value); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Darken.java b/src/net/sourceforge/plantuml/tim/stdlib/Darken.java index bef84da7d..924f24be1 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Darken.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Darken.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.klimt.color.HColor; import net.sourceforge.plantuml.klimt.color.HColorSet; import net.sourceforge.plantuml.klimt.color.NoSuchColorException; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -62,7 +62,7 @@ public class Darken extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String colorString = values.get(0).toString(); final int ratio = values.get(1).toInt(); try { @@ -70,7 +70,7 @@ public class Darken extends SimpleReturnFunction { color = color.darken(ratio); return TValue.fromString(color.asString()); } catch (NoSuchColorException e) { - throw EaterExceptionLocated.located("No such color", location); + throw new EaterException("No such color", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/DateFunction.java b/src/net/sourceforge/plantuml/tim/stdlib/DateFunction.java index 1b77104eb..6f8efa2ea 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/DateFunction.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/DateFunction.java @@ -41,7 +41,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -60,7 +60,7 @@ public class DateFunction extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { if (values.size() == 0) return TValue.fromString(new Date().toString()); @@ -74,7 +74,7 @@ public class DateFunction extends SimpleReturnFunction { try { return TValue.fromString(new SimpleDateFormat(format).format(now)); } catch (Exception e) { - throw EaterExceptionLocated.unlocated("Bad date pattern", location); + throw new EaterException("Bad date pattern", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Dec2hex.java b/src/net/sourceforge/plantuml/tim/stdlib/Dec2hex.java index b274f3a7c..9bbc29e4c 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Dec2hex.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Dec2hex.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Dec2hex extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { try { return TValue.fromString("" + Integer.toHexString(values.get(0).toInt())); } catch (Throwable t) { diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Dirpath.java b/src/net/sourceforge/plantuml/tim/stdlib/Dirpath.java index 0eef6ddb9..ef08879cc 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Dirpath.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Dirpath.java @@ -40,7 +40,7 @@ import java.util.Set; import net.sourceforge.plantuml.preproc.Defines; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -65,7 +65,7 @@ public class Dirpath extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { if (value == null) return TValue.fromString(""); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Eval.java b/src/net/sourceforge/plantuml/tim/stdlib/Eval.java index b08d6b263..311404c17 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Eval.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Eval.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.StringEater; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; @@ -59,7 +59,7 @@ public class Eval extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String exp = values.get(0).toString(); final StringEater eater = new StringEater(exp); final TValue value = eater.eatExpression(context, memory); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Feature.java b/src/net/sourceforge/plantuml/tim/stdlib/Feature.java index 89ef049eb..0f789f30c 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Feature.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Feature.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Feature extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String arg = values.get(0).toString(); if ("style".equalsIgnoreCase(arg)) return TValue.fromInt(1); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/FileExists.java b/src/net/sourceforge/plantuml/tim/stdlib/FileExists.java index bef8b2246..cee70de58 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/FileExists.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/FileExists.java @@ -40,7 +40,7 @@ import java.util.Set; import net.sourceforge.plantuml.security.SFile; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class FileExists extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { // ::comment when __CORE__ final String path = values.get(0).toString(); return TValue.fromBoolean(new SFile(path).exists()); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Filename.java b/src/net/sourceforge/plantuml/tim/stdlib/Filename.java index 812a0033e..9a4223d45 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Filename.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Filename.java @@ -40,7 +40,7 @@ import java.util.Set; import net.sourceforge.plantuml.preproc.Defines; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -65,7 +65,7 @@ public class Filename extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { if (value == null) { return TValue.fromString(""); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/FunctionExists.java b/src/net/sourceforge/plantuml/tim/stdlib/FunctionExists.java index 1d72755cb..d2bd9d1b2 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/FunctionExists.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/FunctionExists.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class FunctionExists extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String name = values.get(0).toString(); return TValue.fromBoolean(context.doesFunctionExist(name)); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/GetAllStdlib.java b/src/net/sourceforge/plantuml/tim/stdlib/GetAllStdlib.java index f03178410..d1b0bff9d 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/GetAllStdlib.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/GetAllStdlib.java @@ -45,7 +45,7 @@ import net.sourceforge.plantuml.json.JsonObject; import net.sourceforge.plantuml.log.Logme; import net.sourceforge.plantuml.preproc.Stdlib; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -64,7 +64,7 @@ public class GetAllStdlib extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { switch (values.size()) { case 0: @@ -99,7 +99,7 @@ public class GetAllStdlib extends SimpleReturnFunction { default: assert false; // Should not append because of canCover() - throw EaterExceptionLocated.located("Error on get_all_stdlib: Too many arguments", location); + throw new EaterException("Error on get_all_stdlib: Too many arguments", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/GetAllTheme.java b/src/net/sourceforge/plantuml/tim/stdlib/GetAllTheme.java index 9404e09d9..2512d26f1 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/GetAllTheme.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/GetAllTheme.java @@ -43,7 +43,7 @@ import net.sourceforge.plantuml.json.JsonArray; import net.sourceforge.plantuml.log.Logme; import net.sourceforge.plantuml.text.StringLocated; import net.sourceforge.plantuml.theme.ThemeUtils; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -62,7 +62,7 @@ public class GetAllTheme extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final JsonArray result = new JsonArray(); try { for (String theme : ThemeUtils.getAllThemeNames()) { diff --git a/src/net/sourceforge/plantuml/tim/stdlib/GetJsonKey.java b/src/net/sourceforge/plantuml/tim/stdlib/GetJsonKey.java index 3067496d0..6e7df046c 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/GetJsonKey.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/GetJsonKey.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.json.JsonArray; import net.sourceforge.plantuml.json.JsonObject; import net.sourceforge.plantuml.json.JsonValue; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -61,10 +61,10 @@ public class GetJsonKey extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final TValue data = values.get(0); if (data.isJson() == false) - throw EaterExceptionLocated.unlocated("Not JSON data", location); + throw new EaterException("Not JSON data", location); final JsonValue json = data.toJson(); if (json.isObject()) { @@ -87,7 +87,7 @@ public class GetJsonKey extends SimpleReturnFunction { return TValue.fromJson(result); } - throw EaterExceptionLocated.unlocated("Bad JSON type", location); + throw new EaterException("Bad JSON type", location); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/GetJsonType.java b/src/net/sourceforge/plantuml/tim/stdlib/GetJsonType.java index b27b68f90..0c09b9e84 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/GetJsonType.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/GetJsonType.java @@ -40,7 +40,7 @@ import java.util.Set; import net.sourceforge.plantuml.json.JsonValue; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class GetJsonType extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final TValue data = values.get(0); if (data.isString()) return TValue.fromString("string"); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/GetVariableValue.java b/src/net/sourceforge/plantuml/tim/stdlib/GetVariableValue.java index f7ffb4555..b99e3478a 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/GetVariableValue.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/GetVariableValue.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class GetVariableValue extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String name = values.get(0).toString(); final TValue variable = memory.getVariable(name); if (variable == null) diff --git a/src/net/sourceforge/plantuml/tim/stdlib/GetVersion.java b/src/net/sourceforge/plantuml/tim/stdlib/GetVersion.java index b6d5e61c2..df0218cea 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/GetVersion.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/GetVersion.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class GetVersion extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { return TValue.fromString(Version.versionString()); } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Getenv.java b/src/net/sourceforge/plantuml/tim/stdlib/Getenv.java index 28a10472f..4c93f23f5 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Getenv.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Getenv.java @@ -40,7 +40,7 @@ import java.util.Set; import net.sourceforge.plantuml.security.SecurityUtils; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class Getenv extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { // ::comment when __CORE__ final String value = getenv(values.get(0).toString()); if (value == null) diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Hex2dec.java b/src/net/sourceforge/plantuml/tim/stdlib/Hex2dec.java index f7c45b0ef..964a6cfb0 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Hex2dec.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Hex2dec.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Hex2dec extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { try { return TValue.fromInt(Integer.parseInt(values.get(0).toString(), 16)); } catch (Throwable t) { diff --git a/src/net/sourceforge/plantuml/tim/stdlib/HslColor.java b/src/net/sourceforge/plantuml/tim/stdlib/HslColor.java index 34496e629..2113908d2 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/HslColor.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/HslColor.java @@ -42,7 +42,7 @@ import java.util.Set; import net.sourceforge.plantuml.klimt.color.HColors; import net.sourceforge.plantuml.klimt.color.HSLColor; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -61,7 +61,7 @@ public class HslColor extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final int h = values.get(0).toInt(); final int s = values.get(1).toInt(); final int l = values.get(2).toInt(); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/IntVal.java b/src/net/sourceforge/plantuml/tim/stdlib/IntVal.java index 2b54cc99b..bda216b4c 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/IntVal.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/IntVal.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class IntVal extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String s = values.get(0).toString(); try { return TValue.fromInt(Integer.parseInt(s)); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/InvokeProcedure.java b/src/net/sourceforge/plantuml/tim/stdlib/InvokeProcedure.java index 6328e88f6..4eab28dde 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/InvokeProcedure.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/InvokeProcedure.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.TFunctionSignature; @@ -64,13 +64,13 @@ public class InvokeProcedure implements TFunction { @Override public void executeProcedureInternal(TContext context, TMemory memory, StringLocated location, List args, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String fname = args.get(0).toString(); final List sublist = args.subList(1, args.size()); final TFunctionSignature signature = new TFunctionSignature(fname, sublist.size()); final TFunction func = context.getFunctionSmart(signature); if (func == null) - throw EaterExceptionLocated.located("Cannot find void function " + fname, location); + throw new EaterException("Cannot find void function " + fname, location); func.executeProcedureInternal(context, memory, location, sublist, named); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/IsDark.java b/src/net/sourceforge/plantuml/tim/stdlib/IsDark.java index f481264d2..cf9449122 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/IsDark.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/IsDark.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.klimt.color.HColor; import net.sourceforge.plantuml.klimt.color.HColorSet; import net.sourceforge.plantuml.klimt.color.NoSuchColorException; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -62,13 +62,13 @@ public class IsDark extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String colorString = values.get(0).toString(); try { final HColor color = HColorSet.instance().getColorLEGACY(colorString); return TValue.fromBoolean(color.isDark()); } catch (NoSuchColorException e) { - throw EaterExceptionLocated.located("No such color", location); + throw new EaterException("No such color", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/IsLight.java b/src/net/sourceforge/plantuml/tim/stdlib/IsLight.java index 1528ea8fe..b717e419a 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/IsLight.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/IsLight.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.klimt.color.HColor; import net.sourceforge.plantuml.klimt.color.HColorSet; import net.sourceforge.plantuml.klimt.color.NoSuchColorException; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -62,13 +62,13 @@ public class IsLight extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String colorString = values.get(0).toString(); try { final HColor color = HColorSet.instance().getColorLEGACY(colorString); return TValue.fromBoolean(!color.isDark()); } catch (NoSuchColorException e) { - throw EaterExceptionLocated.located("No such color", location); + throw new EaterException("No such color", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/JsonKeyExists.java b/src/net/sourceforge/plantuml/tim/stdlib/JsonKeyExists.java index bc22ce9a7..35238cc5b 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/JsonKeyExists.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/JsonKeyExists.java @@ -41,7 +41,7 @@ import java.util.Set; import net.sourceforge.plantuml.json.JsonObject; import net.sourceforge.plantuml.json.JsonValue; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -60,7 +60,7 @@ public class JsonKeyExists extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final TValue arg0 = values.get(0); if (arg0.isJson() == false) return TValue.fromBoolean(false); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Lighten.java b/src/net/sourceforge/plantuml/tim/stdlib/Lighten.java index 41d9a31d2..e309859b3 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Lighten.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Lighten.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.klimt.color.HColor; import net.sourceforge.plantuml.klimt.color.HColorSet; import net.sourceforge.plantuml.klimt.color.NoSuchColorException; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -62,7 +62,7 @@ public class Lighten extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String colorString = values.get(0).toString(); final int ratio = values.get(1).toInt(); try { @@ -70,7 +70,7 @@ public class Lighten extends SimpleReturnFunction { color = color.lighten(ratio); return TValue.fromString(color.asString()); } catch (NoSuchColorException e) { - throw EaterExceptionLocated.located("No such color", location); + throw new EaterException("No such color", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LoadJson.java b/src/net/sourceforge/plantuml/tim/stdlib/LoadJson.java index 40e5746c6..5f8e30b00 100755 --- a/src/net/sourceforge/plantuml/tim/stdlib/LoadJson.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LoadJson.java @@ -50,7 +50,7 @@ import net.sourceforge.plantuml.log.Logme; import net.sourceforge.plantuml.security.SFile; import net.sourceforge.plantuml.security.SURL; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -108,7 +108,7 @@ public class LoadJson extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String path = values.get(0).toString(); try { String data = loadStringData(path, getCharset(values)); @@ -119,12 +119,10 @@ public class LoadJson extends SimpleReturnFunction { return TValue.fromJson(jsonValue); } catch (ParseException pe) { Logme.error(pe); - throw EaterExceptionLocated - .unlocated("JSON parse issue in source " + path + " on location " + pe.getLocation(), location); + throw new EaterException("JSON parse issue in source " + path + " on location " + pe.getLocation(), location); } catch (UnsupportedEncodingException e) { Logme.error(e); - throw EaterExceptionLocated.unlocated("JSON encoding issue in source " + path + ": " + e.getMessage(), - location); + throw new EaterException("JSON encoding issue in source " + path + ": " + e.getMessage(), location); } } @@ -164,7 +162,7 @@ public class LoadJson extends SimpleReturnFunction { * @throws EaterException if something went wrong on reading data */ private String loadStringData(String path, String charset) - throws EaterExceptionLocated, UnsupportedEncodingException { + throws EaterException, UnsupportedEncodingException { byte[] byteData = null; if (path.startsWith("http://") || path.startsWith("https://")) { diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalAnd.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalAnd.java index 1bea47ee2..ede165c22 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalAnd.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalAnd.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalAnd extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { for (TValue v : values) if (v.toBoolean() == false) return TValue.fromBoolean(false); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNand.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNand.java index 52345b792..0740118e5 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNand.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNand.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalNand extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { for (TValue v : values) if (v.toBoolean() == false) return TValue.fromBoolean(!false); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNor.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNor.java index fe59542cf..d0fcb1e14 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNor.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNor.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalNor extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { for (TValue v : values) if (v.toBoolean() == true) return TValue.fromBoolean(!true); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNot.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNot.java index 0dbd650f5..071620862 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNot.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNot.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalNot extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final boolean arg = values.get(0).toBoolean(); return TValue.fromBoolean(!arg); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNxor.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNxor.java index 3abd60263..8403263c7 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalNxor.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalNxor.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalNxor extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { int cpt = 0; for (TValue v : values) if (v.toBoolean() == true) diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalOr.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalOr.java index 0d2e5ded2..de58b384a 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalOr.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalOr.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalOr extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { for (TValue v : values) if (v.toBoolean() == true) return TValue.fromBoolean(true); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/LogicalXor.java b/src/net/sourceforge/plantuml/tim/stdlib/LogicalXor.java index 9b9a66cbb..3a5e24eab 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/LogicalXor.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/LogicalXor.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class LogicalXor extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { int cpt = 0; for (TValue v : values) if (v.toBoolean() == true) diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Now.java b/src/net/sourceforge/plantuml/tim/stdlib/Now.java index f24f75093..de2c7bb71 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Now.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Now.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Now extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final long now = System.currentTimeMillis() / 1000L; return TValue.fromInt((int) now); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Ord.java b/src/net/sourceforge/plantuml/tim/stdlib/Ord.java index 1c509686a..9b1c87d5d 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Ord.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Ord.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Ord extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { try { final int codePoint = values.get(0).toString().codePointAt(0); return TValue.fromInt(codePoint); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/RandomFunction.java b/src/net/sourceforge/plantuml/tim/stdlib/RandomFunction.java index f2c8c885f..1b4de5ac9 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/RandomFunction.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/RandomFunction.java @@ -40,7 +40,7 @@ import java.util.Random; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -61,7 +61,7 @@ public class RandomFunction extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { switch (values.size()) { case 0: return TValue.fromInt(random.nextInt(2)); @@ -77,7 +77,7 @@ public class RandomFunction extends SimpleReturnFunction { default: assert false; // Should not append because of canCover() - throw EaterExceptionLocated.located("Error on Random: Too many argument", location); + throw new EaterException("Error on Random: Too many argument", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/RetrieveProcedure.java b/src/net/sourceforge/plantuml/tim/stdlib/RetrieveProcedure.java index 5e5590ddf..a9b51e5f3 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/RetrieveProcedure.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/RetrieveProcedure.java @@ -40,7 +40,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.TFunctionSignature; @@ -60,7 +60,7 @@ public class RetrieveProcedure extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String fname = values.get(0).toString(); final List args = values.subList(1, values.size()); final TFunctionSignature signature = new TFunctionSignature(fname, args.size()); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/ReverseColor.java b/src/net/sourceforge/plantuml/tim/stdlib/ReverseColor.java index e19fe4a30..a46c9695f 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/ReverseColor.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/ReverseColor.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.klimt.color.HColor; import net.sourceforge.plantuml.klimt.color.HColorSet; import net.sourceforge.plantuml.klimt.color.NoSuchColorException; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -61,14 +61,14 @@ public class ReverseColor extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String colorString = values.get(0).toString(); try { HColor color = HColorSet.instance().getColorLEGACY(colorString); color = color.reverse(); return TValue.fromString(color.asString()); } catch (NoSuchColorException e) { - throw EaterExceptionLocated.located("No such color", location); + throw new EaterException("No such color", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/ReverseHsluvColor.java b/src/net/sourceforge/plantuml/tim/stdlib/ReverseHsluvColor.java index 75a60e8ac..8fd8422e3 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/ReverseHsluvColor.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/ReverseHsluvColor.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.klimt.color.HColor; import net.sourceforge.plantuml.klimt.color.HColorSet; import net.sourceforge.plantuml.klimt.color.NoSuchColorException; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -61,14 +61,14 @@ public class ReverseHsluvColor extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String colorString = values.get(0).toString(); try { HColor color = HColorSet.instance().getColorLEGACY(colorString); color = color.reverseHsluv(); return TValue.fromString(color.asString()); } catch (NoSuchColorException e) { - throw EaterExceptionLocated.located("No such color", location); + throw new EaterException("No such color", location); } } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/SetVariableValue.java b/src/net/sourceforge/plantuml/tim/stdlib/SetVariableValue.java index fcc12260c..631037c45 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/SetVariableValue.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/SetVariableValue.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -59,7 +59,7 @@ public class SetVariableValue extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { // if (memory instanceof TMemoryLocal) { // memory = ((TMemoryLocal) memory).getGlobalForInternalUseOnly(); // } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/SimpleReturnFunction.java b/src/net/sourceforge/plantuml/tim/stdlib/SimpleReturnFunction.java index 5276d495e..c649a86a4 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/SimpleReturnFunction.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/SimpleReturnFunction.java @@ -38,7 +38,7 @@ import java.util.List; import java.util.Map; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.TFunctionType; @@ -53,7 +53,7 @@ public abstract class SimpleReturnFunction implements TFunction { @Override final public void executeProcedureInternal(TContext context, TMemory memory, StringLocated location, - List args, Map named) throws EaterExceptionLocated { + List args, Map named) throws EaterException { throw new UnsupportedOperationException(); } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Size.java b/src/net/sourceforge/plantuml/tim/stdlib/Size.java index 82a72c5ab..b2e176504 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Size.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Size.java @@ -42,7 +42,7 @@ import net.sourceforge.plantuml.json.JsonArray; import net.sourceforge.plantuml.json.JsonObject; import net.sourceforge.plantuml.json.JsonValue; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -61,7 +61,7 @@ public class Size extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final TValue value = values.get(0); if (value.isNumber()) return TValue.fromInt(0); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/SplitStr.java b/src/net/sourceforge/plantuml/tim/stdlib/SplitStr.java index f3e17784a..536ee9ba0 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/SplitStr.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/SplitStr.java @@ -41,7 +41,7 @@ import java.util.StringTokenizer; import net.sourceforge.plantuml.json.JsonArray; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -60,7 +60,7 @@ public class SplitStr extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final JsonArray result = new JsonArray(); final String str = values.get(0).toString(); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Strlen.java b/src/net/sourceforge/plantuml/tim/stdlib/Strlen.java index f97aad0de..2a91bd05d 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Strlen.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Strlen.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Strlen extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { return TValue.fromInt(values.get(0).toString().length()); } } diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Strpos.java b/src/net/sourceforge/plantuml/tim/stdlib/Strpos.java index b27796e0e..2f7c32c7c 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Strpos.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Strpos.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Strpos extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String full = values.get(0).toString(); final String searched = values.get(1).toString(); return TValue.fromInt(full.indexOf(searched)); diff --git a/src/net/sourceforge/plantuml/tim/stdlib/Substr.java b/src/net/sourceforge/plantuml/tim/stdlib/Substr.java index 7f06da48f..76e7751f9 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/Substr.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/Substr.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class Substr extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String full = values.get(0).toString(); final int pos = values.get(1).toInt(); if (pos >= full.length()) diff --git a/src/net/sourceforge/plantuml/tim/stdlib/VariableExists.java b/src/net/sourceforge/plantuml/tim/stdlib/VariableExists.java index 2e024b025..db3c39f1b 100644 --- a/src/net/sourceforge/plantuml/tim/stdlib/VariableExists.java +++ b/src/net/sourceforge/plantuml/tim/stdlib/VariableExists.java @@ -39,7 +39,7 @@ import java.util.Map; import java.util.Set; import net.sourceforge.plantuml.text.StringLocated; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TContext; import net.sourceforge.plantuml.tim.TFunctionSignature; import net.sourceforge.plantuml.tim.TMemory; @@ -58,7 +58,7 @@ public class VariableExists extends SimpleReturnFunction { @Override public TValue executeReturnFunction(TContext context, TMemory memory, StringLocated location, List values, - Map named) throws EaterExceptionLocated { + Map named) throws EaterException { final String name = values.get(0).toString(); return TValue.fromBoolean(memory.getVariable(name) != null); } diff --git a/src/net/sourceforge/plantuml/version/Version.java b/src/net/sourceforge/plantuml/version/Version.java index fd32fba24..61bcf7971 100644 --- a/src/net/sourceforge/plantuml/version/Version.java +++ b/src/net/sourceforge/plantuml/version/Version.java @@ -46,7 +46,7 @@ public class Version { // Warning, "version" should be the same in gradle.properties and Version.java // Any idea anyone how to magically synchronize those :-) ? - private static final String version = "1.2024.4beta4"; + private static final String version = "1.2024.4beta5"; public static String versionString() { return version; diff --git a/test/net/sourceforge/plantuml/tim/TimTestUtils.java b/test/net/sourceforge/plantuml/tim/TimTestUtils.java index 724e227be..c71b7d8a3 100644 --- a/test/net/sourceforge/plantuml/tim/TimTestUtils.java +++ b/test/net/sourceforge/plantuml/tim/TimTestUtils.java @@ -14,27 +14,27 @@ import net.sourceforge.plantuml.json.JsonValue; public class TimTestUtils { // Tfunc: () -> (String) - public static void assertTimExpectedOutput(TFunction func, String expected) throws EaterExceptionLocated { + public static void assertTimExpectedOutput(TFunction func, String expected) throws EaterException { TValue tValue = func.executeReturnFunction(null, null, null, null, null); assertEquals(expected, tValue.toString()); } // Tfunc: (Integer) -> (String) - public static void assertTimExpectedOutputFromInput(TFunction func, Integer input, String expected) throws EaterExceptionLocated { + public static void assertTimExpectedOutputFromInput(TFunction func, Integer input, String expected) throws EaterException { List values = Collections.singletonList(TValue.fromInt(input)); TValue tValue = func.executeReturnFunction(null, null, null, values, null); assertEquals(expected, tValue.toString()); } // Tfunc: (String) -> (String) - public static void assertTimExpectedOutputFromInput(TFunction func, String input, String expected) throws EaterExceptionLocated { + public static void assertTimExpectedOutputFromInput(TFunction func, String input, String expected) throws EaterException { List values = Collections.singletonList(TValue.fromString(input)); TValue tValue = func.executeReturnFunction(null, null, null, values, null); assertEquals(expected, tValue.toString()); } // Tfunc: (JsonValue) -> (String) - public static void assertTimExpectedOutputFromInput(TFunction func, JsonValue input, String expected) throws EaterExceptionLocated { + public static void assertTimExpectedOutputFromInput(TFunction func, JsonValue input, String expected) throws EaterException { List values = Collections.singletonList(TValue.fromJson(input)); TValue tValue = func.executeReturnFunction(null, null, null, values, null); assertEquals(expected, tValue.toString()); diff --git a/test/net/sourceforge/plantuml/tim/stdlib/AlwaysFalseTest.java b/test/net/sourceforge/plantuml/tim/stdlib/AlwaysFalseTest.java index 595781c47..1ff9e68ff 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/AlwaysFalseTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/AlwaysFalseTest.java @@ -9,7 +9,7 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; /** @@ -22,7 +22,7 @@ class AlwaysFalseTest { final String cutName = "AlwaysFalse"; @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "0"); } @@ -32,7 +32,7 @@ class AlwaysFalseTest { " 1 , 0 ", " 'a' , 0 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -42,7 +42,7 @@ class AlwaysFalseTest { " 1 , 0 ", " 123 , 0 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/AlwaysTrueTest.java b/test/net/sourceforge/plantuml/tim/stdlib/AlwaysTrueTest.java index cb9de4910..d1e910b84 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/AlwaysTrueTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/AlwaysTrueTest.java @@ -9,7 +9,7 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; /** @@ -22,7 +22,7 @@ class AlwaysTrueTest { final String cutName = "AlwaysTrue"; @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "1"); } @@ -32,7 +32,7 @@ class AlwaysTrueTest { " 1 , 1 ", " 'a' , 1 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -42,7 +42,7 @@ class AlwaysTrueTest { " 1 , 1 ", " 123 , 1 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/ChrTest.java b/test/net/sourceforge/plantuml/tim/stdlib/ChrTest.java index 0294507fc..58cba9f04 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/ChrTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/ChrTest.java @@ -7,7 +7,7 @@ import org.junit.jupiter.api.IndicativeSentencesGeneration; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; /** @@ -22,7 +22,6 @@ class ChrTest { * Tests chr according to a list of input / expected output * * @throws EaterException should not - * @throws EaterExceptionLocated should not */ @ParameterizedTest(name = "[{index}] " + cutName + "({0}) = ''{1}''") @CsvSource(nullValues = "null", value = { @@ -37,7 +36,7 @@ class ChrTest { " 128512 , 😀 ", " 128512 , \uD83D\uDE00 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } \ No newline at end of file diff --git a/test/net/sourceforge/plantuml/tim/stdlib/Dec2hexTest.java b/test/net/sourceforge/plantuml/tim/stdlib/Dec2hexTest.java index 1603adbe6..ff05ebff7 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/Dec2hexTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/Dec2hexTest.java @@ -9,7 +9,7 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; /** @@ -22,7 +22,7 @@ class Dec2hexTest { final String cutName = "Dec2hex"; @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, ""); } @@ -36,7 +36,7 @@ class Dec2hexTest { " 255 , 0 ", " 65535 , 0 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -50,7 +50,7 @@ class Dec2hexTest { " 255 , ff ", " 65535 , ffff ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/FeatureTest.java b/test/net/sourceforge/plantuml/tim/stdlib/FeatureTest.java index f8a8603aa..d5ea79e3f 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/FeatureTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/FeatureTest.java @@ -12,7 +12,7 @@ import org.junit.jupiter.params.converter.ConvertWith; import org.junit.jupiter.params.provider.CsvSource; import net.sourceforge.plantuml.json.JsonValue; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import test.utils.JunitUtils.StringJsonConverter; @@ -27,7 +27,7 @@ class FeatureTest { @Disabled @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "0"); } @@ -42,7 +42,7 @@ class FeatureTest { " abc , 0", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -51,7 +51,7 @@ class FeatureTest { " 0, 0", " 10, 0", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -61,7 +61,7 @@ class FeatureTest { " \"theme\", 1", " 0, 0", }) - void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterExceptionLocated { + void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/GetAllStdlibTest.java b/test/net/sourceforge/plantuml/tim/stdlib/GetAllStdlibTest.java index 16e3f8eed..e22ebbc20 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/GetAllStdlibTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/GetAllStdlibTest.java @@ -10,7 +10,7 @@ import org.junit.jupiter.api.DisplayNameGenerator.ReplaceUnderscores; import org.junit.jupiter.api.IndicativeSentencesGeneration; import org.junit.jupiter.api.Test; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.expression.TValue; @@ -24,14 +24,14 @@ class GetAllStdlibTest { final String cutName = "GetAllStdlib"; @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { final List empty = new ArrayList<>(); final TValue tValue = cut.executeReturnFunction(null, null, null, empty, null); assertThat(tValue.toString()).contains("archimate", "aws", "tupadr3"); } @Test - void Test_with_one_argument() throws EaterExceptionLocated { + void Test_with_one_argument() throws EaterException { final TValue tValue = cut.executeReturnFunction(null, null, null, Arrays.asList(TValue.fromInt(0)), null); assertThat(tValue.toString()).contains("archimate", "https://github.com/plantuml-stdlib/Archimate-PlantUML"); } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/GetAllThemeTest.java b/test/net/sourceforge/plantuml/tim/stdlib/GetAllThemeTest.java index 9201c2d99..0c6d65ae8 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/GetAllThemeTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/GetAllThemeTest.java @@ -9,7 +9,7 @@ import org.junit.jupiter.api.DisplayNameGenerator.ReplaceUnderscores; import org.junit.jupiter.api.IndicativeSentencesGeneration; import org.junit.jupiter.api.Test; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.expression.TValue; @@ -23,7 +23,7 @@ class GetAllThemeTest { final String cutName = "GetAllTheme"; @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { final List empty = new ArrayList<>(); final TValue tValue = cut.executeReturnFunction(null, null, null, empty, null); assertThat(tValue.toString()).contains("_none_", "amiga", "vibrant"); diff --git a/test/net/sourceforge/plantuml/tim/stdlib/GetJsonKeyTest.java b/test/net/sourceforge/plantuml/tim/stdlib/GetJsonKeyTest.java index 2f19ed62e..269a3aaf3 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/GetJsonKeyTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/GetJsonKeyTest.java @@ -12,7 +12,7 @@ import org.junit.jupiter.params.converter.ConvertWith; import org.junit.jupiter.params.provider.CsvSource; import net.sourceforge.plantuml.json.JsonValue; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import test.utils.JunitUtils.StringJsonConverter; @@ -27,7 +27,7 @@ class GetJsonKeyTest { @Disabled @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "0"); } @@ -38,7 +38,7 @@ class GetJsonKeyTest { " a, Not JSON data", " -1, Not JSON data", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -48,7 +48,7 @@ class GetJsonKeyTest { " 0, Not JSON data", " -1, Not JSON data", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -66,7 +66,7 @@ class GetJsonKeyTest { // - https://json-schema.org/understanding-json-schema/reference/array.html " '[3, \"different\", { \"types\" : \"of values\" }]', [\"types\"]", }) - void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterExceptionLocated { + void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/GetJsonTypeTest.java b/test/net/sourceforge/plantuml/tim/stdlib/GetJsonTypeTest.java index 80f5b90eb..6422fd8de 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/GetJsonTypeTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/GetJsonTypeTest.java @@ -12,7 +12,7 @@ import org.junit.jupiter.params.converter.ConvertWith; import org.junit.jupiter.params.provider.CsvSource; import net.sourceforge.plantuml.json.JsonValue; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import test.utils.JunitUtils.StringJsonConverter; @@ -27,7 +27,7 @@ class GetJsonTypeTest { @Disabled @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "0"); } @@ -37,7 +37,7 @@ class GetJsonTypeTest { " a, string", " -1, string", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -46,7 +46,7 @@ class GetJsonTypeTest { " 0, number", " -1, number", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -66,7 +66,7 @@ class GetJsonTypeTest { " null , json ", " '{\"a\":[1, 2], \"b\":\"abc\", \"b\":true}' , object", }) - void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterExceptionLocated { + void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/GetenvTest.java b/test/net/sourceforge/plantuml/tim/stdlib/GetenvTest.java index 4bbfc443c..883fa0090 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/GetenvTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/GetenvTest.java @@ -8,7 +8,7 @@ import java.util.List; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ValueSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.expression.TValue; /** @@ -20,7 +20,6 @@ class GetenvTest { * Tests getenv should not publish plantuml.security.* environment variables. * * @throws EaterException should not - * @throws EaterExceptionLocated should not */ @ParameterizedTest @ValueSource(strings = { @@ -28,7 +27,7 @@ class GetenvTest { "plantuml.SECURITY.blabla", "plantuml.security.credentials.path", }) - void executeReturnFunctionSecurityTest(String name) throws EaterExceptionLocated { + void executeReturnFunctionSecurityTest(String name) throws EaterException { System.setProperty("plantuml.security.blabla", "example"); Getenv cut = new Getenv(); @@ -41,14 +40,13 @@ class GetenvTest { * Tests getenv still returns 'good' variables. * * @throws EaterException should not - * @throws EaterExceptionLocated should not */ @ParameterizedTest @ValueSource(strings = { "path.separator", "line.separator", }) - void executeReturnFunctionTest(String name) throws EaterExceptionLocated { + void executeReturnFunctionTest(String name) throws EaterException { Getenv cut = new Getenv(); List values = Collections.singletonList(TValue.fromString(name)); diff --git a/test/net/sourceforge/plantuml/tim/stdlib/Hex2decTest.java b/test/net/sourceforge/plantuml/tim/stdlib/Hex2decTest.java index e11e52469..08a33c4c7 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/Hex2decTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/Hex2decTest.java @@ -9,7 +9,7 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; /** @@ -22,7 +22,7 @@ class Hex2decTest { final String cutName = "Hex2dec"; @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "0"); } @@ -42,7 +42,7 @@ class Hex2decTest { " -1 , -1 ", " -a , -10 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -53,7 +53,7 @@ class Hex2decTest { " 10 , 16 ", " -1 , -1 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/LowerTest.java b/test/net/sourceforge/plantuml/tim/stdlib/LowerTest.java index 57910d42f..1488eb641 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/LowerTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/LowerTest.java @@ -12,7 +12,7 @@ import org.junit.jupiter.params.converter.ConvertWith; import org.junit.jupiter.params.provider.CsvSource; import net.sourceforge.plantuml.json.JsonValue; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import test.utils.JunitUtils.StringJsonConverter; @@ -28,7 +28,7 @@ class LowerTest { // TODO: Manage Lower function without param. (today: we observe `Function not found %lower`) @Disabled @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, ""); } @@ -43,7 +43,7 @@ class LowerTest { " É , é ", " 😀 , 😀 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -54,7 +54,7 @@ class LowerTest { " 10 , 10 ", " -1 , -1 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -69,7 +69,7 @@ class LowerTest { // TODO: See JSON management of TRUE/FALSE //" TRUE , true ", }) - void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterExceptionLocated { + void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/OrdTest.java b/test/net/sourceforge/plantuml/tim/stdlib/OrdTest.java index 9ae869b52..ae2cfcd14 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/OrdTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/OrdTest.java @@ -7,7 +7,7 @@ import org.junit.jupiter.api.IndicativeSentencesGeneration; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; /** @@ -22,7 +22,6 @@ class OrdTest { * Tests ord according to a list of input / expected output * * @throws EaterException should not - * @throws EaterExceptionLocated should not */ @ParameterizedTest(name = "[{index}] " + cutName + "(''{0}'') = {1}") @CsvSource(nullValues = "null", value = { @@ -40,7 +39,7 @@ class OrdTest { " 😀 , 128512 ", " \uD83D\uDE00 , 128512 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } \ No newline at end of file diff --git a/test/net/sourceforge/plantuml/tim/stdlib/RandomFuntionTest.java b/test/net/sourceforge/plantuml/tim/stdlib/RandomFuntionTest.java index 226ddde52..f7b61cfdf 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/RandomFuntionTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/RandomFuntionTest.java @@ -10,7 +10,7 @@ import org.junit.jupiter.api.DisplayNameGenerator.ReplaceUnderscores; import org.junit.jupiter.api.IndicativeSentencesGeneration; import org.junit.jupiter.api.RepeatedTest; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import net.sourceforge.plantuml.tim.expression.TValue; @@ -25,27 +25,27 @@ class RandomFunctionTest { final String repetitionLabel = "[{currentRepetition}/{totalRepetitions}] "; @RepeatedTest(value = 10, name = repetitionLabel + cutName + "()") - void test_with_no_argument() throws EaterExceptionLocated { + void test_with_no_argument() throws EaterException { final List empty = new ArrayList<>(); final TValue tValue = cut.executeReturnFunction(null, null, null, empty, null); assertThat(tValue.toInt()).isIn(0, 1); } @RepeatedTest(value = 10, name = repetitionLabel + cutName + "(7)") - void test_with_one_argument() throws EaterExceptionLocated { + void test_with_one_argument() throws EaterException { final TValue tValue = cut.executeReturnFunction(null, null, null, Arrays.asList(TValue.fromInt(7)), null); assertThat(tValue.toInt()).isBetween(0, 7 - 1); } @RepeatedTest(value = 10, name = repetitionLabel + cutName + "(0, 7)") - void test_with_two_argument_first_zero() throws EaterExceptionLocated { + void test_with_two_argument_first_zero() throws EaterException { final TValue tValue = cut.executeReturnFunction(null, null, null, Arrays.asList(TValue.fromInt(0), TValue.fromInt(7)), null); assertThat(tValue.toInt()).isBetween(0, 7 - 1); } @RepeatedTest(value = 10, name = repetitionLabel + cutName + "(3, 7)") - void test_with_two_argument() throws EaterExceptionLocated { + void test_with_two_argument() throws EaterException { final TValue tValue = cut.executeReturnFunction(null, null, null, Arrays.asList(TValue.fromInt(3), TValue.fromInt(7)), null); assertThat(tValue.toInt()).isBetween(3, 7 - 1); diff --git a/test/net/sourceforge/plantuml/tim/stdlib/SizeTest.java b/test/net/sourceforge/plantuml/tim/stdlib/SizeTest.java index a8c3c5218..1763537ba 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/SizeTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/SizeTest.java @@ -12,7 +12,7 @@ import org.junit.jupiter.params.converter.ConvertWith; import org.junit.jupiter.params.provider.CsvSource; import net.sourceforge.plantuml.json.JsonValue; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import test.utils.JunitUtils.StringJsonConverter; @@ -28,7 +28,7 @@ class SizeTest { // TODO: Manage `Size` function without param. (today: we observe `Function not found`) @Disabled @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, "0"); } @@ -47,7 +47,7 @@ class SizeTest { // " 😀 , 1 ", // " \uD83D\uDE00 , 1", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -57,7 +57,7 @@ class SizeTest { " 1 , 0 ", " 10 , 0 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -74,7 +74,7 @@ class SizeTest { " 1, 0 ", " null, 0 ", }) - void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterExceptionLocated { + void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } } diff --git a/test/net/sourceforge/plantuml/tim/stdlib/UpperTest.java b/test/net/sourceforge/plantuml/tim/stdlib/UpperTest.java index 8a78cbb96..5db56f0e9 100644 --- a/test/net/sourceforge/plantuml/tim/stdlib/UpperTest.java +++ b/test/net/sourceforge/plantuml/tim/stdlib/UpperTest.java @@ -12,7 +12,7 @@ import org.junit.jupiter.params.converter.ConvertWith; import org.junit.jupiter.params.provider.CsvSource; import net.sourceforge.plantuml.json.JsonValue; -import net.sourceforge.plantuml.tim.EaterExceptionLocated; +import net.sourceforge.plantuml.tim.EaterException; import net.sourceforge.plantuml.tim.TFunction; import test.utils.JunitUtils.StringJsonConverter; @@ -28,7 +28,7 @@ class UpperTest { // TODO: Manage Upper function without param. (today: we observe `Function not found %upper`) @Disabled @Test - void Test_without_Param() throws EaterExceptionLocated { + void Test_without_Param() throws EaterException { assertTimExpectedOutput(cut, ""); } @@ -43,7 +43,7 @@ class UpperTest { " é , É ", " 😀 , 😀 ", }) - void Test_with_String(String input, String expected) throws EaterExceptionLocated { + void Test_with_String(String input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -54,7 +54,7 @@ class UpperTest { " 10 , 10 ", " -1 , -1 ", }) - void Test_with_Integer(Integer input, String expected) throws EaterExceptionLocated { + void Test_with_Integer(Integer input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } @@ -65,7 +65,7 @@ class UpperTest { " '{\"a\":[1, 2], \"b\":\"abc\", \"b\":true}' , '{\"A\":[1,2],\"B\":\"ABC\",\"B\":TRUE}'", " true , TRUE ", }) - void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterExceptionLocated { + void Test_with_Json(@ConvertWith(StringJsonConverter.class) JsonValue input, String expected) throws EaterException { assertTimExpectedOutputFromInput(cut, input, expected); } }