如何计算 DXL 跳过列表中的所有元素

How can I count all elements in a DXL skip list

我正在尝试计算 Skip 列表中的所有元素,而不必知道其中包含的元素的类型。

像这样:

Module mod = current()
Skip skip = create()

put(skip, 1, "test")
put(skip, 2, mod)

print count(skip) // Returns integer

据我所知,DOORS 本身不支持此功能。为了创建此功能,我利用了一个奇怪的循环行为 ,其中循环中的对象在您实际使用它之前不会被分配:

int count(Skip skip)
{
    if(null skip)
        return 0

    int i = 0

    // Doesn't get assigned unless you do something like obj = obj within the loop
    string obj = null 

    for obj in skip do
    {
        i++
    }

    return i
}