gewuyou b96565ffa3 docs(documentation): 扩展项目功能文档覆盖
- 更新 meta-package 与安装入口,明确聚合范围、当前运行时基线和首页选包路径
- 补充 Game 配置工具文档与导航,把 VS Code config workflow 纳入 reader-facing 采用链路
- 修正文档与实现不一致的 source-generator 与 CQRS 契约说明,补充 support module 边界
- 记录 RP-038 批处理恢复点、委派结论和本轮验证结果
2026-04-25 17:10:37 +08:00

1.9 KiB

GFramework.SourceGenerators.Common

GFramework.SourceGenerators.CommonGFramework 多个源码生成器共享的公共支撑目录。它不是独立推广的运行时或 生成器采用入口,而是跟随各个 *.SourceGenerators 模块一起演化的内部基础设施。

目录定位

这个目录当前主要承载三类公共能力:

  • 生成器基类
    • 例如 AttributeClassGeneratorBaseAttributeEnumGeneratorBaseMetadataAttributeClassGeneratorBase
  • 共享诊断
    • 例如 Diagnostics/CommonDiagnostics.cs
  • 共享符号与冲突处理
    • 例如 Extensions/GeneratedMethodConflictExtensions.cs

如果你在 CoreCQRSGameGodot 侧生成器里看到相似的诊断或生成冲突语义,通常就是这里在统一约束。

与相邻模块的关系

  • GFramework.Core.SourceGenerators
    • 复用这里的生成器基类和部分通用 diagnostics。
  • GFramework.Cqrs.SourceGenerators
    • 以这里作为编译期公共依赖,并把公共 DLL 一起打进 analyzer 包。
  • GFramework.Godot.SourceGenerators
    • 同样复用这里的公共实现和共享约束。

这个目录当前 IsPackable=false,不作为独立安装包推广。对 NuGet 使用者来说,更实际的入口仍然是具体的 GeWuYou.GFramework.*.SourceGenerators 包。

什么时候需要读这里

  • 你在排查多个生成器共有的 diagnostics
  • 你想确认“为什么不同生成器对命名冲突采用同一套规则”
  • 你在扩展或维护生成器,而不是只消费它们

如果你的目标只是“选包并开始使用”,优先回到对应生成器模块 README 和文档专题页。

继续阅读