werkt
[cc1516.git] / lex.dcl
diff --git a/lex.dcl b/lex.dcl
index d1daf7c..a887374 100644 (file)
--- a/lex.dcl
+++ b/lex.dcl
@@ -1,11 +1,12 @@
 definition module lex
 
-import Data.Either
+from Data.Either import :: Either
 
-:: Token
+:: Token :== (Int, TokenValue)
+:: TokenValue
        //Value tokens
        = IdentToken [Char] // Identifier
-       | NumberToken [Char]// Integer
+       | NumberToken Int   // Integer
        | CharToken Char    // Character literal
        //Keyword tokens
        | VarToken          // var keyword
@@ -53,6 +54,4 @@ import Data.Either
 
 :: LexerOutput :== Either String [Token]
 
-instance toString LexerOutput
-
 lexer :: [Char] -> LexerOutput