Files
Workspace/Assets/Modules/ShrinkContext.Core/Runtime/ShrinkContextDefaults.cs
T

29 lines
883 B
C#

#nullable enable
using UnityEngine;
namespace ShrinkContext
{
/// <summary>
/// 默认运行时入口 + Domain Reload 安全重置。
/// 不自动启动任何组件;上层 composition root 通过 ShrinkContextLoader 提交期望组合。
/// </summary>
public static class ShrinkContextDefaults
{
private static ShrinkContextRuntime? _default;
public static ShrinkContextRuntime Default => _default ??= new ShrinkContextRuntime();
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.SubsystemRegistration)]
private static void ResetStaticState()
{
_default = null;
}
/// <summary>测试用:丢弃默认运行时,下次访问时重建(模拟 Domain Reload)。</summary>
public static void ResetForTesting()
{
_default = null;
}
}
}