diff options
Diffstat (limited to 'src/Language/Fiddle/Tokenizer.hs')
-rw-r--r-- | src/Language/Fiddle/Tokenizer.hs | 22 |
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 |