示例#1
0
 internal override Node Bind(Binder b)
 {
     b.Bind(ref Expr, BindAffinity.Type);
     Expr.RequireType();
     b.Bind(ref Args);
     Symbol   = b.BindCtorCall(Expr, Expr.Symbol, Args);
     Datatype = Symbol.Type();
     return(null);
 }
示例#2
0
        internal static CtorCallExpr Bound(Binder b, TypeExpr type, ArgList args)
        {
            Expr writeBack;
            var  sym = b.BindCtorCall(type, type.Symbol, args, out writeBack);

            return(new CtorCallExpr(type, args)
            {
                Symbol = sym, Datatype = sym.Type(), WriteBack = writeBack
            });
        }