private void Parse(TokenType type, string value)
{
Token token = this.lexer.NextToken();
if (token == null)
throw new ParserException(string.Format("Expected '{0}'", value));
if (token.TokenType != type || token.Value != value)
throw new ParserException(string.Format("Expected '{0}'", value));
}