Files
MinFt/Client/LocalPackages/com.neuecc.unirx/Scripts/Observable.Binding.cs
Liubing\LB 3d8d4d18f3 first commit
先修复一下,错误的场景

删除不必要的钓场资产

修复into场景

update:更新meta文件,修复报错

update:修复资源

修复第一章节建造

修复建造第三章

update:删除多余内容

update:更新README.md

update:还原图标

update:更新README

update:更新配置
2026-04-28 02:17:22 +08:00

76 lines
2.6 KiB
C#

using System;
using UniRx.Operators;
namespace UniRx
{
public static partial class Observable
{
public static IConnectableObservable<T> Multicast<T>(this IObservable<T> source, ISubject<T> subject)
{
return new ConnectableObservable<T>(source, subject);
}
public static IConnectableObservable<T> Publish<T>(this IObservable<T> source)
{
return source.Multicast(new Subject<T>());
}
public static IConnectableObservable<T> Publish<T>(this IObservable<T> source, T initialValue)
{
return source.Multicast(new BehaviorSubject<T>(initialValue));
}
public static IConnectableObservable<T> PublishLast<T>(this IObservable<T> source)
{
return source.Multicast(new AsyncSubject<T>());
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source)
{
return source.Multicast(new ReplaySubject<T>());
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source, IScheduler scheduler)
{
return source.Multicast(new ReplaySubject<T>(scheduler));
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source, int bufferSize)
{
return source.Multicast(new ReplaySubject<T>(bufferSize));
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source, int bufferSize, IScheduler scheduler)
{
return source.Multicast(new ReplaySubject<T>(bufferSize, scheduler));
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source, TimeSpan window)
{
return source.Multicast(new ReplaySubject<T>(window));
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source, TimeSpan window, IScheduler scheduler)
{
return source.Multicast(new ReplaySubject<T>(window, scheduler));
}
public static IConnectableObservable<T> Replay<T>(this IObservable<T> source, int bufferSize, TimeSpan window, IScheduler scheduler)
{
return source.Multicast(new ReplaySubject<T>(bufferSize, window, scheduler));
}
public static IObservable<T> RefCount<T>(this IConnectableObservable<T> source)
{
return new RefCountObservable<T>(source);
}
/// <summary>
/// same as Publish().RefCount()
/// </summary>
public static IObservable<T> Share<T>(this IObservable<T> source)
{
return source.Publish().RefCount();
}
}
}