GFramework/GFramework.Core.SourceGenerators/Diagnostics/ContextRegistrationDiagnostics.cs
gewuyou ff553977e3 chore(license): 补齐 Apache-2.0 文件头治理
- 新增许可证文件头检查与修复脚本

- 补充维护者手动修复 PR 工作流和 CI 校验

- 更新贡献指南中的文件头说明

- 补齐仓库维护源码和配置文件的许可证声明
2026-05-03 19:39:49 +08:00

48 lines
1.9 KiB
C#

// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.SourceGenerators.Common.Constants;
namespace GFramework.Core.SourceGenerators.Diagnostics;
/// <summary>
/// 提供 Context Get 注册可见性分析相关诊断。
/// </summary>
public static class ContextRegistrationDiagnostics
{
private const string SourceGeneratorsRuleCategory = $"{PathContests.SourceGeneratorsPath}.Rule";
/// <summary>
/// 当模型使用点在所属架构中找不到静态可见注册时报告。
/// </summary>
public static readonly DiagnosticDescriptor ModelRegistrationMissing = new(
"GF_ContextRegistration_001",
"Model usage has no statically discoverable registration",
"Model '{0}' used by '{1}' is not statically registered in architecture '{2}'",
SourceGeneratorsRuleCategory,
DiagnosticSeverity.Warning,
true);
/// <summary>
/// 当系统使用点在所属架构中找不到静态可见注册时报告。
/// </summary>
public static readonly DiagnosticDescriptor SystemRegistrationMissing = new(
"GF_ContextRegistration_002",
"System usage has no statically discoverable registration",
"System '{0}' used by '{1}' is not statically registered in architecture '{2}'",
SourceGeneratorsRuleCategory,
DiagnosticSeverity.Warning,
true);
/// <summary>
/// 当工具使用点在所属架构中找不到静态可见注册时报告。
/// </summary>
public static readonly DiagnosticDescriptor UtilityRegistrationMissing = new(
"GF_ContextRegistration_003",
"Utility usage has no statically discoverable registration",
"Utility '{0}' used by '{1}' is not statically registered in architecture '{2}'",
SourceGeneratorsRuleCategory,
DiagnosticSeverity.Warning,
true);
}