完全同意,而且这是让“方法体系”不发散的关键约束:方法里的所有东西都只能引用你世界树里已经存在的节点类型与载体,不允许发明一套“方法专用数据结构宇宙”。
下面我把“条件是什么、动作是什么、结果是什么”用你现有的对象(存在/场景/特征类型/特征值节点等)重新落一遍,确保可实现、可扩展、且后续加外设不改代码。
1) 条件节点只允许由现有节点拼出来
条件的最小构成(Condition)
条件节点不存“新类型”,只存“引用 + 判定方式”:
作用域引用(可选组合)
场景节点类*(在哪个场景下)存在节点类*(对哪个存在)词性节点类* 特征类型(关心哪个特征类型)- (可选)
U64 ViewKey(同视角作用域) - (可选)时间窗口(开始/结束时间戳)
判定方式
- 用你已有的
枚举_比较字段 / 枚举_比较条件这套比较框架 - 判定对象永远是“节点的主信息”或“特征值节点指针”,而不是裸 Vec
- 用你已有的
举例(都是现有结构能表达的):
- <