// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT License. // See the LICENSE file in the project root for more information. using System.Threading.Tasks; namespace System.Reactive.Joins { public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal AsyncPattern(IAsyncObservable source1) { Source1 = source1; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2) { Source1 = source1; Source2 = source2; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3) { Source1 = source1; Source2 = source2; Source3 = source3; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal IAsyncObservable Source11 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10, IAsyncObservable source11) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; Source11 = source11; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal IAsyncObservable Source11 { get; } internal IAsyncObservable Source12 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10, IAsyncObservable source11, IAsyncObservable source12) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; Source11 = source11; Source12 = source12; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal IAsyncObservable Source11 { get; } internal IAsyncObservable Source12 { get; } internal IAsyncObservable Source13 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10, IAsyncObservable source11, IAsyncObservable source12, IAsyncObservable source13) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; Source11 = source11; Source12 = source12; Source13 = source13; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal IAsyncObservable Source11 { get; } internal IAsyncObservable Source12 { get; } internal IAsyncObservable Source13 { get; } internal IAsyncObservable Source14 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10, IAsyncObservable source11, IAsyncObservable source12, IAsyncObservable source13, IAsyncObservable source14) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; Source11 = source11; Source12 = source12; Source13 = source13; Source14 = source14; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal IAsyncObservable Source11 { get; } internal IAsyncObservable Source12 { get; } internal IAsyncObservable Source13 { get; } internal IAsyncObservable Source14 { get; } internal IAsyncObservable Source15 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10, IAsyncObservable source11, IAsyncObservable source12, IAsyncObservable source13, IAsyncObservable source14, IAsyncObservable source15) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; Source11 = source11; Source12 = source12; Source13 = source13; Source14 = source14; Source15 = source15; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } public class AsyncPattern : AsyncPattern { internal IAsyncObservable Source1 { get; } internal IAsyncObservable Source2 { get; } internal IAsyncObservable Source3 { get; } internal IAsyncObservable Source4 { get; } internal IAsyncObservable Source5 { get; } internal IAsyncObservable Source6 { get; } internal IAsyncObservable Source7 { get; } internal IAsyncObservable Source8 { get; } internal IAsyncObservable Source9 { get; } internal IAsyncObservable Source10 { get; } internal IAsyncObservable Source11 { get; } internal IAsyncObservable Source12 { get; } internal IAsyncObservable Source13 { get; } internal IAsyncObservable Source14 { get; } internal IAsyncObservable Source15 { get; } internal IAsyncObservable Source16 { get; } internal AsyncPattern(IAsyncObservable source1, IAsyncObservable source2, IAsyncObservable source3, IAsyncObservable source4, IAsyncObservable source5, IAsyncObservable source6, IAsyncObservable source7, IAsyncObservable source8, IAsyncObservable source9, IAsyncObservable source10, IAsyncObservable source11, IAsyncObservable source12, IAsyncObservable source13, IAsyncObservable source14, IAsyncObservable source15, IAsyncObservable source16) { Source1 = source1; Source2 = source2; Source3 = source3; Source4 = source4; Source5 = source5; Source6 = source6; Source7 = source7; Source8 = source8; Source9 = source9; Source10 = source10; Source11 = source11; Source12 = source12; Source13 = source13; Source14 = source14; Source15 = source15; Source16 = source16; } public AsyncPlan Then(Func selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlan(this, selector); } public AsyncPlan Then(Func> selector) { if (selector == null) throw new ArgumentNullException(nameof(selector)); return new AsyncPlanWithTask(this, selector); } } }