public bool TryParse(PrioritizedString expr, ParameterInfo paramInfo, out Expression parsed)
        {
            expr = expr.Trim();
            var exprStr = expr.Input;

            if (!Brackets.AreMatching(exprStr.First(), exprStr.Last()))
            {
                parsed = null;
                return(false);
            }

            var exprWithoutBrackets = expr.Substring(1, expr.Input.Length - 2);

            parsed = Combinator.ParseFunctionalExpression(exprWithoutBrackets, paramInfo);
            return(true);
        }