protected override void Extract() { StringBuilder stringBuilder = new StringBuilder(); while (CurrentChar.IsLetter() || isWordChar(CurrentChar)) { stringBuilder.Append(CurrentChar); NextChar(); } text = stringBuilder.ToString(); type = TokenType.RESERVED_WORDS.ContainsKey(text.ToLower()) ? TokenType.RESERVED_WORDS[text.ToLower()] : KeywordToken.StringLiteral; }