如何在Acceleo中的for循环中比较当前和先前迭代的值?

时间:2016-06-02 09:59:17

标签: eclipse for-loop eclipse-emf acceleo ocl

是否可以比较Acceleo中for循环中当前和上一次迭代的值?

知道LET可以在for循环中定义,但在每次当前迭代时都是可变的,因此前一个值将丢失,我们将始终只得到当前值。

1 个答案:

答案 0 :(得分:2)

在加速版的for循环中,您可以访问变量i

[let seq : Sequence(Integer) = Sequence{4,5,6}]
    [for (n : Integer | seq)]
        [seq->at(i-1)/]
    [/for]
[/let]

输出:

Invalid
4
5

注意边缘情况,例如第一个和最后一个项目。

Here你可以找到一些非常有用的文档