aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/com/jantuomi
diff options
context:
space:
mode:
authorjantuomi <jans.tuomi@gmail.com>2016-08-03 09:35:41 +0300
committerjantuomi <jans.tuomi@gmail.com>2016-08-03 09:54:47 +0300
commit422fc58603665d179046b133c296d64b76ca3464 (patch)
tree29792eefda52acc2d471117d433f21fca83ab8d4 /src/main/com/jantuomi
parent30d3ce8402015db2a85a4bed35a20bd95bd0c283 (diff)
Throw FileNotFoundError from include function if module can't be found
Diffstat (limited to 'src/main/com/jantuomi')
-rw-r--r--src/main/com/jantuomi/tunkki/core/CommandLineArgumentContainer.java2
-rw-r--r--src/main/com/jantuomi/tunkki/core/runtime/builtins/globals/IncludeBuiltinFunction.java5
2 files changed, 4 insertions, 3 deletions
diff --git a/src/main/com/jantuomi/tunkki/core/CommandLineArgumentContainer.java b/src/main/com/jantuomi/tunkki/core/CommandLineArgumentContainer.java
index 4b2d0f8..458fe54 100644
--- a/src/main/com/jantuomi/tunkki/core/CommandLineArgumentContainer.java
+++ b/src/main/com/jantuomi/tunkki/core/CommandLineArgumentContainer.java
@@ -70,7 +70,7 @@ public class CommandLineArgumentContainer {
}
contents = sb.toString();
} catch (IOException e) {
- System.err.println(String.format("Couldn't read file \"%s\".", file.toString()));
+ // System.err.println(String.format("Couldn't read file \"%s\".", file.toString()));
return null;
}
diff --git a/src/main/com/jantuomi/tunkki/core/runtime/builtins/globals/IncludeBuiltinFunction.java b/src/main/com/jantuomi/tunkki/core/runtime/builtins/globals/IncludeBuiltinFunction.java
index 0788142..519163c 100644
--- a/src/main/com/jantuomi/tunkki/core/runtime/builtins/globals/IncludeBuiltinFunction.java
+++ b/src/main/com/jantuomi/tunkki/core/runtime/builtins/globals/IncludeBuiltinFunction.java
@@ -35,7 +35,8 @@ public class IncludeBuiltinFunction extends BuiltinFunction {
throw new TypeTunkkiError(-1, params.get(0).getType().toString(), getName());
}
- String filename = ((StringDatatype) params.get(0)).getData();
+ StringDatatype param = (StringDatatype) params.get(0);
+ String filename = param.getData();
if (BuiltinManager.getInstance().BUILTIN_MODULES.contains(filename)) {
@@ -47,7 +48,7 @@ public class IncludeBuiltinFunction extends BuiltinFunction {
String contents = CommandLineArgumentContainer.getInstance().readFileContents(filename);
if (contents == null) {
- return null;
+ throw new FileNotFoundTunkkiError(-1, param.toString());
}
String regex = String.format(".*include\\?\\s+\"\\s?%s\\s?\"\\s?\\!.*", Pattern.quote(filename));