public void EmitHoistingAssignment (EmitContext ec) { // // Remove hoisted redirection to emit assignment from original parameter // var temp = parameter.Parameter.HoistedVariant; parameter.Parameter.HoistedVariant = null; var a = new HoistedFieldAssign (GetFieldExpression (ec), parameter); a.EmitStatement (ec); parameter.Parameter.HoistedVariant = temp; }
public void EmitHoistingAssignment (EmitContext ec) { // // Remove hoisted redirection to emit assignment from original parameter // HoistedVariable temp = parameter.Parameter.HoistedVariant; parameter.Parameter.HoistedVariant = null; Assign a = new HoistedFieldAssign (GetFieldExpression (ec), parameter); if (a.Resolve (new ResolveContext (ec.MemberContext)) != null) a.EmitStatement (ec); parameter.Parameter.HoistedVariant = temp; }