0

在 GrGen.NET 中运行转换时出现此异常。我可以把它缩小到这个最小的例子:

规则集:

rule createNode : (Node) {
    modify {
        newNode:Node;
        return(newNode);
    }    
}

rule deleteAny {
    :Node;
    replace{}
}

序列集:

(myVariable) = createNode
deleteAny[*]

PS:GrGen.NET 是一个非常流行的基于 .NET 框架的图形转换库(在http://grgen.net上查看)。如果有人可以为 GrGen.NET 定义一个标签会很酷,我没有足够的声誉:-)。干杯!

4

1 回答 1

2

显然,这个错误来自 GrGen。myVariable问题是包含从规则创建的节点的变量createNode

当应该使用 删除节点时deleteAny,它会从图中删除,但仍以某种方式被困在此变量中。一个简单的解决方法是为这个变量分配一个任意值,例如myVariable = 0,在节点被删除之前。

这是一个 hack,但在修复此错误之前会一直这样做。

于 2013-01-12T13:57:31.520 回答