Exemple #1
0
        public static VerifiedExpression Parse(string expr, CalcEnvironment env)
        {
            if (env == null)
            {
                throw new ArgumentNullException(nameof(env));
            }

            var tokenExpr = TokenExpression.Parse(expr);

            if (tokenExpr.Success)
            {
                return(Verifier.VerifyExpression(tokenExpr.BackingArray, env));
            }
            else
            {
                return(new VerifiedExpression(tokenExpr.ErrorMessage, tokenExpr.ErrorPosition));
            }
        }
Exemple #2
0
        public static VerifiedExpression Create(TokenExpression tokenExpr, CalcEnvironment env)
        {
            if (tokenExpr == null)
            {
                throw new ArgumentNullException(nameof(tokenExpr));
            }
            if (!tokenExpr.Success)
            {
                throw new ArgumentException("Expression must be successfully parsed.", nameof(tokenExpr));
            }
            if (env == null)
            {
                throw new ArgumentNullException(nameof(env));
            }

            var arr = tokenExpr.Expression.ToArray();

            return(Verifier.VerifyExpression(arr, env));
        }