1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- // 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))]
- // TODO: currently we've moved these three types into this assembly, with the intention of deprecating them all,
- // and preferring the newer types in the platform-specific packages.
- // An alternative would be to have the types retain their original names and live in those new packages without
- // deprecating them. This would enable us to avoid making working types obsolete which might reduce confusion.
- // It does remove the opportunity to fix up some naming issues, but maybe it would be better to live with that
- // to minimize disruption.
- #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
|