Exemplo n.º 1
0
        private IToken BuildIntegerOrDecimalToken(char character)
        {
            var tokenValue = new StringBuilder();

            tokenValue.Append(character);

            while (true)
            {
                if (_text.IsTheNextCharacter(nextCharacter => char.IsDigit(nextCharacter) || '.' == nextCharacter && nextCharacter != ' '))
                {
                    tokenValue.Append(_text.NextCharacter);
                }
                else
                {
                    return(TokenBuilder.Build(tokenValue.ToString()));
                }
            }
        }
Exemplo n.º 2
0
        private IToken BuildKeywordOrIdentifierToken(char character)
        {
            var tokenValue = new StringBuilder();

            tokenValue.Append(character);

            while (true)
            {
                if (_text.IsTheNextCharacter(nextCharacter => char.IsLetter(nextCharacter) && nextCharacter != ' '))
                {
                    tokenValue.Append(_text.NextCharacter);
                }
                else
                {
                    return(TokenBuilder.Build(tokenValue.ToString()));
                }
            }
        }