summaryrefslogtreecommitdiff
path: root/src/Language/Fiddle/Tokenizer.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Language/Fiddle/Tokenizer.hs')
-rw-r--r--src/Language/Fiddle/Tokenizer.hs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Language/Fiddle/Tokenizer.hs b/src/Language/Fiddle/Tokenizer.hs
index 87f119f..007009f 100644
--- a/src/Language/Fiddle/Tokenizer.hs
+++ b/src/Language/Fiddle/Tokenizer.hs
@@ -28,8 +28,10 @@ data T
| KWUnion
| KWWo
| KWImport
+ | KWUsing
| TokColon
| TokComma
+ | TokDot
| TokComment !Text
| TokDocComment !Text
| TokEq
@@ -67,6 +69,7 @@ textOf t = do
KWUnion -> Just "union"
KWWo -> Just "wo"
KWImport -> Just "import"
+ KWUsing -> Just "using"
TokIdent i -> Just i
TokLitNum n -> Just n
_ -> Nothing
@@ -101,6 +104,7 @@ parseToken = spaces *> tok parseToken' <* spaces
"rw" -> KWRw
"reserved" -> KWReserved
"union" -> KWUnion
+ "using" -> KWUsing
"struct" -> KWStruct
"assert_pos" -> KWAssertPos
(Data.Text.head -> h) | isDigit h -> TokLitNum str
@@ -137,6 +141,7 @@ parseToken = spaces *> tok parseToken' <* spaces
try (string "]]" $> TokDirectiveEnd),
char ':' $> TokColon,
char ',' $> TokComma,
+ char '.' $> TokDot,
char '=' $> TokEq,
char '{' $> TokLBrace,
char '[' $> TokLBracket,