我有一组概念节点,我正在使用宏Command
进行迭代。是一个抽象的概念。我已经为具体的子概念定义了模板和缩减规则,例如:$LOOP$
Command
Outline
template tpl_Outline
input Outline
...
和
reduction rules:
[concept Outline ] --> tpl_Outline
[inheritors false ]
[condition <always>]
问题:我如何从只知道节点是抽象类型的宏内部为具体概念调用适当的生成器规则?$LOOP$
Command
[编辑] 由于建议的答案是特定于循环元素集合,当没有循环时我将如何做同样的事情?即如何为给定节点(例如当前节点的某个子节点)触发配置的规则。
注意 1:我尝试使用 just $LOOP$[null]
,希望元素节点能够通过适当的规则自动处理,但这只是null
在输出中产生了 s 。
注2:我试过$LOOP[$COPY_SRC$[null]]
了,但产生了
textgen error: 'No textgen for Draw.structure.Outline' in [actualArgument] Outline null[847086916111387210] in Draw.sandbox@0
[编辑 2]这实际上是一个可行的解决方案。有什么帮助可能是使缓存无效(只是重建项目不起作用)。
注3:以前我使用模板开关来调用基于具体概念的适当模板,但我现在想支持自定义扩展,Command
所以我不能再创建一个详尽的模板开关。