Catrobat.IDE.Core.Formulas.FormulaInterpreter.CompleteFunctionsForward C# (CSharp) Метод

CompleteFunctionsForward() приватный Метод

Compare InterpretFunctions.
private CompleteFunctionsForward ( IEnumerable tokens ) : IEnumerable
tokens IEnumerable
Результат IEnumerable
        private IEnumerable<IFormulaToken> CompleteFunctionsForward(IEnumerable<IFormulaToken> tokens)
        {
            foreach (var context in tokens.WithContext())
            {
                var previousToken = context[0];
                var token = context[1];

                // attach parentheses to function
                if (previousToken is IFormulaFunction)
                {
                    // missing function argument
                    if (!(token is FormulaNodeParentheses)) yield break;

                    SetOrigin(previousToken, new[] { previousToken, token });
                    yield return previousToken;
                    continue;
                }

                // yield any other token
                if (token != null && !(token is IFormulaFunction)) yield return token;
            }
        }