This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
#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;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user