mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-07 08:44:29 +08:00
- 新增 CQRS 架构模式详细文档,包括命令查询职责分离核心概念 - 添加命令、查询、处理器、请求分发器等基本用法示例 - 包含高级用法如通知、管道行为、流式处理等完整功能介绍 - 提供最佳实践指南和常见问题解决方案 - 添加游戏内容配置系统文档,涵盖 YAML 配置源文件和 JSON Schema 结构描述 - 包含推荐目录结构、Schema 示例和 YAML 示例配置 - 提供完整的接入模板,包括 csproj 配置、启动帮助器和运行时读取模板 - 添加 Godot 文本配置桥接、热重载和 Architecture 接入等高级功能说明
49 lines
1.9 KiB
C#
49 lines
1.9 KiB
C#
using GFramework.SourceGenerators.Common.Constants;
|
|
|
|
namespace GFramework.Core.SourceGenerators.Diagnostics;
|
|
|
|
internal static class AutoRegisterModuleDiagnostics
|
|
{
|
|
private const string Category = $"{PathContests.SourceGeneratorsPath}.Architecture";
|
|
|
|
public static readonly DiagnosticDescriptor NestedClassNotSupported = new(
|
|
"GF_AutoModule_001",
|
|
"AutoRegisterModule does not support nested classes",
|
|
"AutoRegisterModule does not support nested class '{0}'",
|
|
Category,
|
|
DiagnosticSeverity.Error,
|
|
true);
|
|
|
|
public static readonly DiagnosticDescriptor RegistrationTypeRequired = new(
|
|
"GF_AutoModule_002",
|
|
"Registration attribute requires a concrete type",
|
|
"Attribute '{0}' on '{1}' requires a concrete type argument",
|
|
Category,
|
|
DiagnosticSeverity.Error,
|
|
true);
|
|
|
|
public static readonly DiagnosticDescriptor RegistrationTypeMustImplementExpectedInterface = new(
|
|
"GF_AutoModule_003",
|
|
"Registration type does not implement the expected interface",
|
|
"Type '{0}' used by '{1}' must implement '{2}'",
|
|
Category,
|
|
DiagnosticSeverity.Error,
|
|
true);
|
|
|
|
public static readonly DiagnosticDescriptor RegistrationTypeMustHaveParameterlessConstructor = new(
|
|
"GF_AutoModule_004",
|
|
"Registration type must have an accessible parameterless constructor",
|
|
"Type '{0}' used by '{1}' must have an accessible parameterless constructor",
|
|
Category,
|
|
DiagnosticSeverity.Error,
|
|
true);
|
|
|
|
public static readonly DiagnosticDescriptor InstallMethodConflict = new(
|
|
"GF_AutoModule_005",
|
|
"Install method conflicts with generated code",
|
|
"Class '{0}' already defines 'Install(IArchitecture)', which conflicts with AutoRegisterModule generated code",
|
|
Category,
|
|
DiagnosticSeverity.Error,
|
|
true);
|
|
}
|