<PackageReference Include="System.Reactive" Version="6.0.0" />

Plan<TResult>

public abstract class Plan<TResult>
Represents an execution plan for join patterns.
using System.Collections.Generic; using System.Runtime.CompilerServices; namespace System.Reactive.Joins { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] public abstract class Plan<[System.Runtime.CompilerServices.Nullable(2)] TResult> { internal Plan() { } internal abstract ActivePlan Activate(Dictionary<object, IJoinObserver> externalSubscriptions, IObserver<TResult> observer, Action<ActivePlan> deactivate); internal static JoinObserver<TSource> CreateObserver<[System.Runtime.CompilerServices.Nullable(2)] TSource>(Dictionary<object, IJoinObserver> externalSubscriptions, IObservable<TSource> observable, Action<Exception> onError) { JoinObserver<TSource> joinObserver; if (!externalSubscriptions.TryGetValue((object)observable, out IJoinObserver value)) { joinObserver = new JoinObserver<TSource>(observable, onError); externalSubscriptions.Add((object)observable, (IJoinObserver)joinObserver); } else joinObserver = (JoinObserver<TSource>)value; return joinObserver; } } }