private static void ParseTokens(string text, TokenType type) { Lexer lexer = new Lexer(text); string[] values = text.Split(' '); Token token; foreach (string value in values) { token = lexer.NextToken(); Assert.IsNotNull(token); Assert.AreEqual(type, token.TokenType); Assert.AreEqual(value, token.Value); } Assert.IsNull(lexer.NextToken()); }
private static void ParseNameTokens(string text, params string[] values) { Lexer lexer = new Lexer(text); Token token; foreach (string value in values) { token = lexer.NextToken(); Assert.IsNotNull(token); Assert.AreEqual(TokenType.Name, token.TokenType); Assert.AreEqual(value, token.Value); } Assert.IsNull(lexer.NextToken()); }
private static void ParseToken(string text, TokenType type, string value) { using (Lexer lexer = new Lexer(text)) { Token token = lexer.NextToken(); Assert.IsNotNull(token); Assert.AreEqual(type, token.TokenType); Assert.AreEqual(value, token.Value); Assert.IsNull(lexer.NextToken()); } }
public Parser(Lexer lexer) { this.lexer = lexer; }