Ejemplo n.º 1
0
 public void Visit(TokenNumber tok)
 {
     if (tok.Line < FromLine || tok.Line > ToLine)
     {
         return;
     }
     //Npp.StyleText((int)TextStyle.Default, tok.StartPosition, tok.EndPosition);
 }
Ejemplo n.º 2
0
    public Token NextToken()
    {
        Token token = null;

        if (ptr >= Text.Length)
        {
            token = new Token(TokenType.END_OF_STREAM);
            goto done;
        }

        char currentChar = Text[ptr++];

        switch (currentChar)
        {
        case '+':
            token = new Token(TokenType.PLUS);
            break;

        default:
            if (char.IsDigit(currentChar))
            {
                string numStr = "";
                numStr += currentChar;

                while (ptr < Text.Length && char.IsDigit(Text[ptr]))
                {
                    numStr += Text[ptr];
                    ptr++;
                }

                double value = double.Parse(numStr);

                token = new TokenNumber(value);
            }
            else if (char.IsLetter(currentChar) || currentChar == '_')
            {
                string ident = "";
                ident += currentChar;

                while (ptr < Text.Length && char.IsDigit(Text[ptr]) || currentChar == '_')
                {
                    ident += Text[ptr];
                    ptr++;
                }

                token = new TokenIdentifier(ident);
            }
            break;
        }

        if (token == null)
        {
            token = new Token(TokenType.UNKNOWN);
        }

done:
        return(token);
    }
Ejemplo n.º 3
0
 public void Visit(TokenNumber tok)
 {
     AppendEverything(tok);
     NbItems++;
 }
Ejemplo n.º 4
0
 public override string ToString()
 {
     return(TokenNumber.ToString());
 }
Ejemplo n.º 5
0
 public void Visit(TokenNumber tok)
 {
     SetStyling(tok.EndPosition - tok.StartPosition, SciStyleId.Number);
 }