| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- // 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.
- extern alias SystemReactiveNet;
- using SystemReactiveNet::System.Reactive.Concurrency;
- using System.Runtime.CompilerServices;
- [assembly:TypeForwardedToAttribute(typeof(AsyncLock))]
- [assembly:TypeForwardedToAttribute(typeof(IConcurrencyAbstractionLayer))]
- [assembly:TypeForwardedToAttribute(typeof(CurrentThreadScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(DefaultScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(EventLoopScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(HistoricalSchedulerBase))]
- [assembly:TypeForwardedToAttribute(typeof(HistoricalScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(ImmediateScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(IScheduledItem<>))]
- [assembly:TypeForwardedToAttribute(typeof(IScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(ISchedulerLongRunning))]
- [assembly:TypeForwardedToAttribute(typeof(ISchedulerPeriodic))]
- [assembly:TypeForwardedToAttribute(typeof(IStopwatch))]
- [assembly:TypeForwardedToAttribute(typeof(IStopwatchProvider))]
- [assembly:TypeForwardedToAttribute(typeof(LocalScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(NewThreadScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(ScheduledItem<>))]
- [assembly:TypeForwardedToAttribute(typeof(ScheduledItem<,>))]
- [assembly:TypeForwardedToAttribute(typeof(Scheduler))]
- [assembly:TypeForwardedToAttribute(typeof(SchedulerOperation))]
- [assembly:TypeForwardedToAttribute(typeof(SchedulerOperationAwaiter))]
- [assembly:TypeForwardedToAttribute(typeof(SchedulerQueue<>))]
- [assembly:TypeForwardedToAttribute(typeof(Synchronization))]
- [assembly:TypeForwardedToAttribute(typeof(SynchronizationContextScheduler))]
- [assembly:TypeForwardedToAttribute(typeof(TaskObservationOptions))]
- [assembly:TypeForwardedToAttribute(typeof(TaskPoolScheduler))]
- #if !WINDOWS_UWP
- // The UWP build of System.Reactive has always included some additional UWP-specific members in its ThreadPoolScheduler,
- // so we can't forward the ThreadPoolScheduler type to the one in System.Reactive.Net for UWP builds.
- // Instead, we supply a completely separate ThreadPoolScheduler type in this component. The UWP-specific members are
- // all marked as obsolete. The intended migration for UWP apps is:
- // 1. Replace any use of the UWP-specific ThreadPoolScheduler features with UwpThreadPoolScheduler from the new
- // Uwp-specific component. (If the app was using only standard ThreadPoolScheduler features, this step will
- // not be required.)
- // 2. Replace reference to System.Reactive with System.Reactive.Net.
- // TODO: does this create a problem for UWP apps that depend indirectly on multiple versions of Rx? They'll have
- // both System.Reactive and System.Reactive.Net. Both types will define ThreadPoolScheduler. Pre-compiled components
- // will get the one they were build against, but the type name ThreadPoolScheduler will be ambiguous in the app code.
- [assembly:TypeForwardedToAttribute(typeof(ThreadPoolScheduler))]
- #endif
- [assembly:TypeForwardedToAttribute(typeof(VirtualTimeSchedulerBase<,>))]
- [assembly:TypeForwardedToAttribute(typeof(VirtualTimeScheduler<,>))]
- [assembly:TypeForwardedToAttribute(typeof(VirtualTimeSchedulerExtensions))]
- // Seem comments in Reactive\Linq.cs for why we exclude forwarders for these types in some reference assemblies.
- #if !(BUILDING_REFERENCE_ASSEMBLY && NET8_0_OR_GREATER)
- #if WINDOWS
- [assembly:TypeForwardedToAttribute(typeof(System.Reactive.Concurrency.CoreDispatcherScheduler))]
- #endif
- #if HAS_WINFORMS
- [assembly:TypeForwardedToAttribute(typeof(System.Reactive.Concurrency.ControlScheduler))]
- #endif
- #if HAS_DISPATCHER
- [assembly:TypeForwardedToAttribute(typeof(System.Reactive.Concurrency.DispatcherScheduler))]
- #endif
- #endif
|