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.hs22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/Language/Fiddle/Tokenizer.hs b/src/Language/Fiddle/Tokenizer.hs
index 4e06b92..08f5649 100644
--- a/src/Language/Fiddle/Tokenizer.hs
+++ b/src/Language/Fiddle/Tokenizer.hs
@@ -12,29 +12,31 @@ import qualified Text.Parsec
data T
= KWAssertPos
- | TokIdent !Text
| KWAt
| KWBits
| KWEnum
- | TokComment !Text
- | TokDocComment !Text
+ | KWInstance
| KWLocation
- | KWObject
- | KWObjtype
| KWOption
| KWPackage
| KWReg
| KWReserved
| KWRo
- | KWWo
| KWRw
- | TokLitNum !Text
+ | KWStruct
+ | KWType
+ | KWUnion
+ | KWWo
| TokColon
| TokComma
+ | TokComment !Text
+ | TokDocComment !Text
| TokEq
+ | TokIdent !Text
| TokLBrace
| TokLBracket
| TokLParen
+ | TokLitNum !Text
| TokRBrace
| TokRBracket
| TokRParen
@@ -60,8 +62,8 @@ parseToken = spaces *> tok parseToken' <* spaces
"bits" -> KWBits
"enum" -> KWEnum
"location" -> KWLocation
- "object" -> KWObject
- "objtype" -> KWObjtype
+ "instance" -> KWInstance
+ "type" -> KWType
"option" -> KWOption
"package" -> KWPackage
"reg" -> KWReg
@@ -69,6 +71,8 @@ parseToken = spaces *> tok parseToken' <* spaces
"wo" -> KWWo
"rw" -> KWRw
"reserved" -> KWReserved
+ "union" -> KWUnion
+ "struct" -> KWStruct
"assert_pos" -> KWAssertPos
(Data.Text.head -> h) | isDigit h -> TokLitNum str
ident -> TokIdent ident