Skip to content

Commit a9fa39c

Browse files
Add BuildApp and WithInstance methods to builder (#4124)
Co-authored-by: Glenn <[email protected]>
1 parent f65ffa6 commit a9fa39c

File tree

7 files changed

+970
-6
lines changed

7 files changed

+970
-6
lines changed

src/ReactiveUI.Blazor/Builder/BlazorReactiveUIBuilderExtensions.cs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ public static class BlazorReactiveUIBuilderExtensions
1818
/// </value>
1919
public static IScheduler BlazorMainThreadScheduler { get; } = CurrentThreadScheduler.Instance;
2020

21+
/// <summary>
22+
/// Gets the blazor wasm scheduler.
23+
/// </summary>
24+
/// <value>
25+
/// The blazor wasm scheduler.
26+
/// </value>
27+
public static IScheduler BlazorWasmScheduler { get; } = WasmScheduler.Default;
28+
2129
/// <summary>
2230
/// Configures ReactiveUI for Blazor platform with appropriate schedulers.
2331
/// </summary>
@@ -49,4 +57,19 @@ public static IReactiveUIBuilder WithBlazorScheduler(this IReactiveUIBuilder bui
4957

5058
return builder.WithMainThreadScheduler(BlazorMainThreadScheduler);
5159
}
60+
61+
/// <summary>
62+
/// Withes the blazor scheduler.
63+
/// </summary>
64+
/// <param name="builder">The builder.</param>
65+
/// <returns>The builder instance for chaining.</returns>
66+
public static IReactiveUIBuilder WithBlazorWasmScheduler(this IReactiveUIBuilder builder)
67+
{
68+
if (builder is null)
69+
{
70+
throw new ArgumentNullException(nameof(builder));
71+
}
72+
73+
return builder.WithMainThreadScheduler(BlazorWasmScheduler);
74+
}
5275
}

src/ReactiveUI.Tests/API/ApiApprovalTests.ReactiveUI.DotNet10_0.verified.txt

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2163,6 +2163,7 @@ namespace ReactiveUI.Builder
21632163
{
21642164
public interface IReactiveUIBuilder : Splat.Builder.IAppBuilder
21652165
{
2166+
ReactiveUI.Builder.IReactiveUIInstance BuildApp();
21662167
ReactiveUI.Builder.IReactiveUIBuilder ConfigureMessageBus(System.Action<ReactiveUI.MessageBus> configure);
21672168
ReactiveUI.Builder.IReactiveUIBuilder ConfigureSuspensionDriver(System.Action<ReactiveUI.ISuspensionDriver> configure);
21682169
ReactiveUI.Builder.IReactiveUIBuilder ConfigureViewLocator(System.Action<ReactiveUI.DefaultViewLocator> configure);
@@ -2180,11 +2181,30 @@ namespace ReactiveUI.Builder
21802181
where TViewModel : class, ReactiveUI.IReactiveObject, new ();
21812182
ReactiveUI.Builder.IReactiveUIBuilder UsingSplatModule<T>(T registrationModule)
21822183
where T : Splat.Builder.IModule;
2184+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T>(System.Action<T?> action);
2185+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2>(System.Action<T1?, T2?> action);
2186+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3>(System.Action<T1?, T2?, T3?> action);
2187+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4>(System.Action<T1?, T2?, T3?, T4?> action);
2188+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5>(System.Action<T1?, T2?, T3?, T4?, T5?> action);
2189+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?> action);
2190+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?> action);
2191+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?> action);
2192+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?> action);
2193+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?> action);
2194+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?> action);
2195+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?> action);
2196+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?> action);
2197+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?> action);
2198+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?> action);
2199+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?, T16?> action);
21832200
ReactiveUI.Builder.IReactiveUIBuilder WithMainThreadScheduler(System.Reactive.Concurrency.IScheduler scheduler, bool setRxApp = true);
21842201
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("The method uses reflection and will not work in AOT environments.")]
21852202
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The method uses reflection and will not work in AOT environments.")]
21862203
ReactiveUI.Builder.IReactiveUIBuilder WithPlatformModule<T>()
21872204
where T : ReactiveUI.IWantsToRegisterStuff, new ();
2205+
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Calls ReactiveUI.IWantsToRegisterStuff.Register(Action<Func<Object>, Type>)")]
2206+
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("ProcessRegistrationForNamespace uses reflection to locate types which may be trim" +
2207+
"med.")]
21882208
ReactiveUI.Builder.IReactiveUIBuilder WithPlatformServices();
21892209
ReactiveUI.Builder.IReactiveUIBuilder WithRegistration(System.Action<Splat.IMutableDependencyResolver> configureAction);
21902210
ReactiveUI.Builder.IReactiveUIBuilder WithRegistrationOnBuild(System.Action<Splat.IMutableDependencyResolver> configureAction);
@@ -2203,6 +2223,7 @@ namespace ReactiveUI.Builder
22032223
public ReactiveUIBuilder(Splat.IMutableDependencyResolver resolver, Splat.IReadonlyDependencyResolver? current) { }
22042224
public System.Reactive.Concurrency.IScheduler? MainThreadScheduler { get; }
22052225
public System.Reactive.Concurrency.IScheduler? TaskpoolScheduler { get; }
2226+
public ReactiveUI.Builder.IReactiveUIInstance BuildApp() { }
22062227
public ReactiveUI.Builder.IReactiveUIBuilder ConfigureMessageBus(System.Action<ReactiveUI.MessageBus> configure) { }
22072228
public ReactiveUI.Builder.IReactiveUIBuilder ConfigureSuspensionDriver(System.Action<ReactiveUI.ISuspensionDriver> configure) { }
22082229
public ReactiveUI.Builder.IReactiveUIBuilder ConfigureViewLocator(System.Action<ReactiveUI.DefaultViewLocator> configure) { }
@@ -2220,7 +2241,24 @@ namespace ReactiveUI.Builder
22202241
where TViewModel : class, ReactiveUI.IReactiveObject, new () { }
22212242
public ReactiveUI.Builder.IReactiveUIBuilder UsingSplatModule<T>(T registrationModule)
22222243
where T : Splat.Builder.IModule { }
2244+
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Calls ReactiveUI.IWantsToRegisterStuff.Register(Action<Func<Object>, Type>)")]
22232245
public override Splat.Builder.IAppBuilder WithCoreServices() { }
2246+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T>(System.Action<T?> action) { }
2247+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2>(System.Action<T1?, T2?> action) { }
2248+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3>(System.Action<T1?, T2?, T3?> action) { }
2249+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4>(System.Action<T1?, T2?, T3?, T4?> action) { }
2250+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5>(System.Action<T1?, T2?, T3?, T4?, T5?> action) { }
2251+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?> action) { }
2252+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?> action) { }
2253+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?> action) { }
2254+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?> action) { }
2255+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?> action) { }
2256+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?> action) { }
2257+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?> action) { }
2258+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?> action) { }
2259+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?> action) { }
2260+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?> action) { }
2261+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?, T16?> action) { }
22242262
public ReactiveUI.Builder.IReactiveUIBuilder WithMainThreadScheduler(System.Reactive.Concurrency.IScheduler scheduler, bool setRxApp = true) { }
22252263
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("The method uses reflection and will not work in AOT environments.")]
22262264
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The method uses reflection and will not work in AOT environments.")]

src/ReactiveUI.Tests/API/ApiApprovalTests.ReactiveUI.DotNet9_0.verified.txt

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2163,6 +2163,7 @@ namespace ReactiveUI.Builder
21632163
{
21642164
public interface IReactiveUIBuilder : Splat.Builder.IAppBuilder
21652165
{
2166+
ReactiveUI.Builder.IReactiveUIInstance BuildApp();
21662167
ReactiveUI.Builder.IReactiveUIBuilder ConfigureMessageBus(System.Action<ReactiveUI.MessageBus> configure);
21672168
ReactiveUI.Builder.IReactiveUIBuilder ConfigureSuspensionDriver(System.Action<ReactiveUI.ISuspensionDriver> configure);
21682169
ReactiveUI.Builder.IReactiveUIBuilder ConfigureViewLocator(System.Action<ReactiveUI.DefaultViewLocator> configure);
@@ -2180,11 +2181,30 @@ namespace ReactiveUI.Builder
21802181
where TViewModel : class, ReactiveUI.IReactiveObject, new ();
21812182
ReactiveUI.Builder.IReactiveUIBuilder UsingSplatModule<T>(T registrationModule)
21822183
where T : Splat.Builder.IModule;
2184+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T>(System.Action<T?> action);
2185+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2>(System.Action<T1?, T2?> action);
2186+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3>(System.Action<T1?, T2?, T3?> action);
2187+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4>(System.Action<T1?, T2?, T3?, T4?> action);
2188+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5>(System.Action<T1?, T2?, T3?, T4?, T5?> action);
2189+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?> action);
2190+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?> action);
2191+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?> action);
2192+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?> action);
2193+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?> action);
2194+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?> action);
2195+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?> action);
2196+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?> action);
2197+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?> action);
2198+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?> action);
2199+
ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?, T16?> action);
21832200
ReactiveUI.Builder.IReactiveUIBuilder WithMainThreadScheduler(System.Reactive.Concurrency.IScheduler scheduler, bool setRxApp = true);
21842201
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("The method uses reflection and will not work in AOT environments.")]
21852202
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The method uses reflection and will not work in AOT environments.")]
21862203
ReactiveUI.Builder.IReactiveUIBuilder WithPlatformModule<T>()
21872204
where T : ReactiveUI.IWantsToRegisterStuff, new ();
2205+
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Calls ReactiveUI.IWantsToRegisterStuff.Register(Action<Func<Object>, Type>)")]
2206+
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("ProcessRegistrationForNamespace uses reflection to locate types which may be trim" +
2207+
"med.")]
21882208
ReactiveUI.Builder.IReactiveUIBuilder WithPlatformServices();
21892209
ReactiveUI.Builder.IReactiveUIBuilder WithRegistration(System.Action<Splat.IMutableDependencyResolver> configureAction);
21902210
ReactiveUI.Builder.IReactiveUIBuilder WithRegistrationOnBuild(System.Action<Splat.IMutableDependencyResolver> configureAction);
@@ -2203,6 +2223,7 @@ namespace ReactiveUI.Builder
22032223
public ReactiveUIBuilder(Splat.IMutableDependencyResolver resolver, Splat.IReadonlyDependencyResolver? current) { }
22042224
public System.Reactive.Concurrency.IScheduler? MainThreadScheduler { get; }
22052225
public System.Reactive.Concurrency.IScheduler? TaskpoolScheduler { get; }
2226+
public ReactiveUI.Builder.IReactiveUIInstance BuildApp() { }
22062227
public ReactiveUI.Builder.IReactiveUIBuilder ConfigureMessageBus(System.Action<ReactiveUI.MessageBus> configure) { }
22072228
public ReactiveUI.Builder.IReactiveUIBuilder ConfigureSuspensionDriver(System.Action<ReactiveUI.ISuspensionDriver> configure) { }
22082229
public ReactiveUI.Builder.IReactiveUIBuilder ConfigureViewLocator(System.Action<ReactiveUI.DefaultViewLocator> configure) { }
@@ -2220,7 +2241,24 @@ namespace ReactiveUI.Builder
22202241
where TViewModel : class, ReactiveUI.IReactiveObject, new () { }
22212242
public ReactiveUI.Builder.IReactiveUIBuilder UsingSplatModule<T>(T registrationModule)
22222243
where T : Splat.Builder.IModule { }
2244+
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Calls ReactiveUI.IWantsToRegisterStuff.Register(Action<Func<Object>, Type>)")]
22232245
public override Splat.Builder.IAppBuilder WithCoreServices() { }
2246+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T>(System.Action<T?> action) { }
2247+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2>(System.Action<T1?, T2?> action) { }
2248+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3>(System.Action<T1?, T2?, T3?> action) { }
2249+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4>(System.Action<T1?, T2?, T3?, T4?> action) { }
2250+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5>(System.Action<T1?, T2?, T3?, T4?, T5?> action) { }
2251+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?> action) { }
2252+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?> action) { }
2253+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?> action) { }
2254+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?> action) { }
2255+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?> action) { }
2256+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?> action) { }
2257+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?> action) { }
2258+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?> action) { }
2259+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?> action) { }
2260+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?> action) { }
2261+
public ReactiveUI.Builder.IReactiveUIInstance WithInstance<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>(System.Action<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, T13?, T14?, T15?, T16?> action) { }
22242262
public ReactiveUI.Builder.IReactiveUIBuilder WithMainThreadScheduler(System.Reactive.Concurrency.IScheduler scheduler, bool setRxApp = true) { }
22252263
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("The method uses reflection and will not work in AOT environments.")]
22262264
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The method uses reflection and will not work in AOT environments.")]

src/ReactiveUI.Winforms/Builder/WinFormsReactiveUIBuilderExtensions.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ public static class WinFormsReactiveUIBuilderExtensions
2323
/// </summary>
2424
/// <param name="builder">The builder instance.</param>
2525
/// <returns>The builder instance for chaining.</returns>
26+
#if NET6_0_OR_GREATER
27+
[SuppressMessage("Trimming", "IL2026:Members annotated with 'RequiresUnreferencedCodeAttribute' require dynamic access otherwise can break functionality when trimming application code", Justification = "Not using reflection")]
28+
[SuppressMessage("AOT", "IL3050:Calling members annotated with 'RequiresDynamicCodeAttribute' may break functionality when AOT compiling.", Justification = "Not using reflection")]
29+
#endif
2630
public static IReactiveUIBuilder WithWinForms(this IReactiveUIBuilder builder)
2731
{
2832
if (builder is null)

0 commit comments

Comments
 (0)