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); }
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 }); }