summaryrefslogtreecommitdiff
path: root/src/Language/Fiddle/Tokenizer.hs
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2022-12-16 20:54:00 -0700
committerJosh Rahm <joshuarahm@gmail.com>2022-12-16 20:54:00 -0700
commitbf66c00aa9ee8a7f8058e396db167324076331b2 (patch)
tree22a18d010eec2527e6a27aa65b40374b78991931 /src/Language/Fiddle/Tokenizer.hs
parent0eb6cb33982e2b00f5ffdedc300fa27ed4007967 (diff)
downloadfiddle-bf66c00aa9ee8a7f8058e396db167324076331b2.tar.gz
fiddle-bf66c00aa9ee8a7f8058e396db167324076331b2.tar.bz2
fiddle-bf66c00aa9ee8a7f8058e396db167324076331b2.zip
Start implementing "fiddle" code.
nothing is happening right now, but it's on its way.
Diffstat (limited to 'src/Language/Fiddle/Tokenizer.hs')
-rw-r--r--src/Language/Fiddle/Tokenizer.hs37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/Language/Fiddle/Tokenizer.hs b/src/Language/Fiddle/Tokenizer.hs
new file mode 100644
index 0000000..9931523
--- /dev/null
+++ b/src/Language/Fiddle/Tokenizer.hs
@@ -0,0 +1,37 @@
+module Language.Fiddle.Tokenizer where
+
+import Language.Fiddle.Types
+
+data T
+ = KW_assert_pos
+ | KW_at
+ | KW_bittype
+ | KW_enum
+ | KW_location
+ | KW_object
+ | KW_objtype
+ | KW_option
+ | KW_package
+ | KW_reg
+ | KW_ro
+ | KW_wo
+ | Tok_colon
+ | Tok_comma
+ | Tok_comment
+ | Tok_docComment
+ | Tok_eq
+ | Tok_ident String
+ | Tok_lbrace
+ | Tok_lbracket
+ | Tok_litnum String
+ | Tok_lparen
+ | Tok_package
+ | Tok_rbrace
+ | Tok_rbracket
+ | Tok_rparen
+ | Tok_semi
+
+data Token = Token T SourceSpan
+
+tokenize :: String -> Text -> [Token]
+tokenize srcName txt = undefined