From 9063eb10ce034e54153a8251d15c959d339a1c5d Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Wed, 31 Aug 2011 10:41:31 -0400 Subject: [PATCH] add more lexer tokens --- parser/Lexer.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/parser/Lexer.py b/parser/Lexer.py index 3ee67e9..7f980c0 100644 --- a/parser/Lexer.py +++ b/parser/Lexer.py @@ -5,11 +5,28 @@ class Lexer(object): def __init__(self): self.reserved = { 'C': 'C', + + # types + 'char': 'CHAR', + 'short': 'SHORT', + 'int': 'INT', + 'long': 'LONG', + + # control + 'if': 'IF', + 'else': 'ELSE', + 'while': 'WHILE', + 'for': 'FOR', + 'return': 'RETURN', } self.tokens = [ 'LPAREN', 'RPAREN', + 'LBRACKET', + 'RBRACKET', + 'LCURLY', + 'RCURLY', 'SEMICOLON', 'STRING', 'ID', @@ -21,6 +38,10 @@ class Lexer(object): self.t_LPAREN = r'\(' self.t_RPAREN = r'\)' + self.t_LBRACKET = r'\[' + self.t_RBRACKET = r'\]' + self.t_LCURLY = r'\{' + self.t_RCURLY = r'\}' self.t_SEMICOLON = r';' self.t_ignore = ' \t\r'