Add SerializeField private field support

This commit is contained in:
2026-04-03 16:19:56 +08:00
parent d4d825e1b1
commit 2b19b4bece
10 changed files with 333 additions and 17 deletions

View File

@@ -271,4 +271,9 @@ C# 脚本模块已经完成了第一阶段的核心闭环,不再是“从 0
- `MonoScriptRuntime` 现已支持把常见整数底层的 C# `enum` 字段纳入脚本字段模型,并按 `Int32` 进入默认值、存储值、运行时值三层同步链路。
- 已新增 `FieldMetadataProbeState` / `EnumFieldProbeState` 探针,覆盖枚举字段发现、默认值提取、运行时写回与场景 roundtrip。
- 已通过新增定向测试,以及完整 `ScriptFieldStorage_Test.*:MonoScriptRuntimeTest.*:ProjectScriptAssemblyTest.*` 整组验证;输出全绿,`exit code 3` 仍为既有历史现象。
- 字段系统下一步建议切到`[SerializeField] private` 字段支持
- 已完成字段系统第二小项`[SerializeField] private` 字段支持
- 新增 `XCEngine.SerializeField` attribute命名与 Unity 对齐runtime 字段发现现已支持“public 字段”与“带 `[SerializeField]` 的 private 字段”双通路。
- 字段筛选已同步排除 `static` / `const` / `readonly`,并新增 `SerializeFieldProbe``FieldMetadataProbe` 扩展与对应 C++ 回归测试,覆盖默认值提取、存储覆盖、运行时写回与场景 roundtrip。
- `ProjectScriptAssemblyTest.*` 现改为使用独立的测试项目程序集输出目录,不再依赖真实 `project/Library/ScriptAssemblies`,避免与 editor / Mono 持有的文件锁互相干扰。
- 已通过完整 `ScriptFieldStorage_Test.*:MonoScriptRuntimeTest.*:ProjectScriptAssemblyTest.*` 验证;输出全绿,`exit code 3` 仍为既有历史现象。
- 字段系统下一步建议切到:组件引用字段支持