public static ICode V(ICode ast, Expr find, Expr replace)
        {
            var v = new VisitorReplaceExprUse(new Dictionary <Expr, Expr> {
                { find, replace }
            });

            return(v.Visit(ast));
        }
 public static ICode V(ICode ast, Dictionary<Expr, Expr> replace) {
     var v = new VisitorReplaceExprUse(replace);
     return v.Visit(ast);
 }
 public static ICode V(ICode ast, Expr find, Expr replace) {
     var v = new VisitorReplaceExprUse(new Dictionary<Expr, Expr> { { find, replace } });
     return v.Visit(ast);
 }
        public static ICode V(ICode ast, Dictionary <Expr, Expr> replace)
        {
            var v = new VisitorReplaceExprUse(replace);

            return(v.Visit(ast));
        }