Files
MinFt/Client/LocalPackages/com.neuecc.unirx/Scripts/UnityEngineBridge/Diagnostics/ObservableLogger.cs
2026-04-27 12:07:32 +08:00

31 lines
779 B
C#

using System;
using System.Collections.Generic;
using System.Text;
using UnityEngine;
namespace UniRx.Diagnostics
{
public class ObservableLogger : IObservable<LogEntry>
{
static readonly Subject<LogEntry> logPublisher = new Subject<LogEntry>();
public static readonly ObservableLogger Listener = new ObservableLogger();
private ObservableLogger()
{
}
public static Action<LogEntry> RegisterLogger(Logger logger)
{
if (logger.Name == null) throw new ArgumentNullException("logger.Name is null");
return logPublisher.OnNext;
}
public IDisposable Subscribe(IObserver<LogEntry> observer)
{
return logPublisher.Subscribe(observer);
}
}
}