add documentation to Lexer