mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-04-03 04:14:30 +08:00
- 实现了 ConfigRegistry 配置注册表,支持按名称注册和类型安全查询 - 创建了 InMemoryConfigTable 内存配置表,提供基于字典的只读配置存储 - 定义了 IConfigLoader、IConfigRegistry 和 IConfigTable 接口契约 - 添加了完整的单元测试验证配置表的注册、查询和类型检查功能 - 在项目文件中添加了新的代码文件夹结构 - 实现了配置表的覆盖策略以支持开发期热重载需求
19 lines
881 B
C#
19 lines
881 B
C#
using GFramework.Core.Abstractions.Utility;
|
|
|
|
namespace GFramework.Game.Abstractions.Config;
|
|
|
|
/// <summary>
|
|
/// 定义配置加载器契约。
|
|
/// 具体实现负责从文件系统、资源包或其他配置源加载文本配置,并将解析结果注册到配置注册表。
|
|
/// </summary>
|
|
public interface IConfigLoader : IUtility
|
|
{
|
|
/// <summary>
|
|
/// 执行配置加载并将结果写入注册表。
|
|
/// 实现应在同一次加载过程中保证注册结果的一致性,避免只加载部分配置后就暴露给运行时消费。
|
|
/// </summary>
|
|
/// <param name="registry">用于接收配置表的注册表。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>表示异步加载流程的任务。</returns>
|
|
Task LoadAsync(IConfigRegistry registry, CancellationToken cancellationToken = default);
|
|
} |