summaryrefslogtreecommitdiff
path: root/dice-lang/src/bjc/dicelang/v1/examples/DiceASTPragma.java
diff options
context:
space:
mode:
Diffstat (limited to 'dice-lang/src/bjc/dicelang/v1/examples/DiceASTPragma.java')
-rw-r--r--dice-lang/src/bjc/dicelang/v1/examples/DiceASTPragma.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/dice-lang/src/bjc/dicelang/v1/examples/DiceASTPragma.java b/dice-lang/src/bjc/dicelang/v1/examples/DiceASTPragma.java
new file mode 100644
index 0000000..2fe9d30
--- /dev/null
+++ b/dice-lang/src/bjc/dicelang/v1/examples/DiceASTPragma.java
@@ -0,0 +1,21 @@
+package bjc.dicelang.v1.examples;
+
+import java.util.function.BiConsumer;
+
+import bjc.dicelang.v1.ast.nodes.IDiceASTNode;
+import bjc.utils.data.ITree;
+import bjc.utils.funcdata.FunctionalStringTokenizer;
+import bjc.utils.funcdata.IMap;
+
+/**
+ * Alias for the type of a 'pragma' or special language command
+ *
+ * To explain it, a pragma is a function that takes a tokenizer with the rest
+ * of the line, and an enviroment that contains variable bindings
+ * @author ben
+ *
+ */
+public interface DiceASTPragma extends
+ BiConsumer<FunctionalStringTokenizer, IMap<String, ITree<IDiceASTNode>>> {
+ // Just an alias
+}