ExcelFormulaParser.Engine.LexicalAnalysis.TokenizerContext.AppendToLastToken C# (CSharp) Method

AppendToLastToken() public method

public AppendToLastToken ( string stringToAppend ) : void
stringToAppend string
return void
        public void AppendToLastToken(string stringToAppend)
        {
            _result.Last().Append(stringToAppend);
        }

Usage Example

Example #1
0
        public IEnumerable <Token> Tokenize(string input)
        {
            if (string.IsNullOrEmpty(input))
            {
                return(Enumerable.Empty <Token>());
            }
            var context = new TokenizerContext(input);

            foreach (var c in context.FormulaChars)
            {
                Token tokenSeparator;
                if (CharIsTokenSeparator(c, out tokenSeparator))
                {
                    if (context.IsInString && tokenSeparator.TokenType != TokenType.String)
                    {
                        context.AppendToCurrentToken(c);
                        continue;
                    }
                    // two operators in sequence could be "<=" or ">="
                    if (IsPartOfMultipleCharSeparator(context, c))
                    {
                        context.AppendToLastToken(c.ToString());
                        context.NewToken();
                        continue;
                    }
                    if (tokenSeparator.TokenType == TokenType.String)
                    {
                        if (context.LastToken != null &&
                            context.LastToken.TokenType == TokenType.String &&
                            !context.CurrentTokenHasValue)
                        {
                            // We are dealing with an empty string ('').
                            context.AddToken(new Token(string.Empty, TokenType.StringContent));
                        }
                        context.ToggleIsInString();
                    }
                    if (context.CurrentTokenHasValue)
                    {
                        context.AddToken(CreateToken(context));
                    }
                    if (tokenSeparator.Value == "-")
                    {
                        if (TokenIsNegator(context))
                        {
                            context.AddToken(new Token("-", TokenType.Negator));
                            continue;
                        }
                    }
                    context.AddToken(tokenSeparator);
                    context.NewToken();
                    continue;
                }
                context.AppendToCurrentToken(c);
            }
            if (context.CurrentTokenHasValue)
            {
                context.AddToken(CreateToken(context));
            }
            return(context.Result);
        }
All Usage Examples Of ExcelFormulaParser.Engine.LexicalAnalysis.TokenizerContext::AppendToLastToken