summaryrefslogtreecommitdiff
path: root/axisc/src/lexer.rs
diff options
context:
space:
mode:
Diffstat (limited to 'axisc/src/lexer.rs')
-rw-r--r--axisc/src/lexer.rs34
1 files changed, 34 insertions, 0 deletions
diff --git a/axisc/src/lexer.rs b/axisc/src/lexer.rs
new file mode 100644
index 0000000..3c6b30b
--- /dev/null
+++ b/axisc/src/lexer.rs
@@ -0,0 +1,34 @@
+#[derive(Debug)]
+pub enum Token {
+ Identifier(String),
+ Literal(Literal),
+ Multiply,
+ Divide,
+ Pound,
+ Colon,
+ Percent,
+ Caret,
+ Dollar,
+ Equals,
+ Semicolon,
+ GreaterThan,
+ LessThan,
+ Add,
+ Subtract,
+ LineFeed,
+ Quote,
+}
+
+pub enum Literal {
+ String(String),
+ Number(f64),
+ Boolean(bool),
+ Array(Array)
+}
+
+pub enum Array {
+ StringArray(Vec<String>),
+ NumberArray(Vec<f64>),
+ BooleanArray(Vec<bool>),
+ MultiDimensionalArray(Vec<Array>)
+}