Exemple #1
0
        public static IResMemberRef App(
            this IResGenericRef fun,
            SourceRange range,
            IEnumerable <IResGenericArg> args)
        {
            var genericApp = new ResMemberGenericApp(
                fun,
                args);

            return(fun.InnerDecl.MakeRef(range, genericApp));
        }
Exemple #2
0
        public ResMemberGenericApp(
            IResGenericRef fun,
            IEnumerable <IResGenericArg> args)
        {
            _fun  = fun;
            _args = args.ToArray();

            _subst = new Substitution(_fun.MemberTerm.Subst);
            foreach (var pair in _fun.Parameters.Zip(_args, Tuple.Create))
            {
                _subst.Insert(pair.Item1.Decl, pair.Item2);
            }
        }