Arithmetica.Tokenization.Rewriting.WordRewriter.Rewrite C# (CSharp) Метод

Rewrite() публичный Метод

public Rewrite ( TokenStream tokens ) : TokenStream
tokens TokenStream
Результат TokenStream
        public override TokenStream Rewrite(TokenStream tokens)
        {
            // Token stream needs to be in infix notation.
            if (tokens.Notation != TokenNotation.Infix)
            {
                throw new MathExpressionException("Token stream is not in infix notation.");
            }

            tokens = this.RewriteConstants(tokens);
            tokens = this.RewriteFunctions(tokens);
            tokens = this.RewriteVariables(tokens);
            return tokens;
        }

Usage Example

 public void WordRewriter_TokenStream_Needs_To_Be_In_Infix_Notation()
 {
     TokenStream stream = new TokenStream(Enumerable.Empty<Token>(), TokenNotation.Postfix);
     WordRewriter rewriter = new WordRewriter();
     var exception = Assert.Throws<MathExpressionException>(() => rewriter.Rewrite(stream));
     Assert.AreEqual("Token stream is not in infix notation.", exception.Message);
 }
All Usage Examples Of Arithmetica.Tokenization.Rewriting.WordRewriter::Rewrite