X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=lex.dcl;h=46a3ab817beb372ea231fe0cf9696faa14ef348a;hb=8de73bb36ae068011c2c1b1fc9b3c9091a897997;hp=f256af59e857849a664acb4501a84fcf646e20fb;hpb=4b8ac77a88528dd1eeac43fd7a6c2e6ac711d5a9;p=cc1516.git diff --git a/lex.dcl b/lex.dcl index f256af5..46a3ab8 100644 --- a/lex.dcl +++ b/lex.dcl @@ -4,8 +4,8 @@ import Data.Either :: Token //Value tokens - = IdentToken String // Identifier - | NumberToken Int // Integer + = IdentToken [Char] // Identifier + | NumberToken [Char]// Integer | CharToken Char // Character literal //Keyword tokens | VarToken // var keyword @@ -43,7 +43,9 @@ import Data.Either | EqualsToken // == | AmpersandsToken // && | PipesToken // || + | ArrowToken // -> + | EndOfFileToken // EOF -:: LexerOutput a :== Either String a +:: LexerOutput :== Either String [Token] -lexer :: [Char] -> LexerOutput [Token] +lexer :: [Char] -> LexerOutput