从内联模板访问节点的属性/子级

时间:2018-06-20 10:57:11

标签: mps

我有一个template switch,根据节点的概念,我想使用该节点的属性和/或子级创建运行时对象。每个案例的右侧是一个内联模板。如何从该内联模板访问节点的属性/子级?更具体地说,在下面的屏幕快照中,需要从相应的line()rectangle()节点中提取LineCommandRectangle方法的参数。

请注意, Alt + Enter 菜单不提供“添加属性宏”。

我正在使用MPS 2018.1.5。

enter image description here

2 个答案:

答案 0 :(得分:3)

首先添加一个虚拟参数,然后在参数上使用Alt + Enter添加一个宏,以将其替换为节点中的某些东西。

答案 1 :(得分:3)

为了从节点的子节点中提取参数,您需要添加模板参数(例如“ null”),然后将宏放在其上。然后,在生成过程中,模板参数(null)将替换为节点子代的生成目标。 如果要使用节点的属性,则应添加一个更具体的参数(例如,空字符串),然后将插入号放入属性单元格(在引号之间),然后您将看到“添加属性宏”的意图

模板参数

template argument

具有属性的模板参数

template argument with the property

添加属性宏

add property macro