我正在尝试使用此功能创建一个保留:
extend sys {
ListA : list of uint;
keep ListA.size() == 3; // For the example
keep for each in ListA { // For the example
it < 10;
};
ListB : list of uint;
keep ListB.size() == 8;
};
我想添加一个keep“has_each”,意思是,我想确保ListA的所有成员都在ListB中生成。
我知道如何做到这一点的一种方法如下:
keep for each in ListB {
read_only(index < ListA.size()) => it == ListA[index];
};
此方法的问题是,如果我有某种形式的 keep 已经设置了第一个索引,例如,如果我还需要 keep:
keep ListB[0] > 10;
在这种情况下会引起矛盾。
我尝试过但行不通的另一个想法是:
keep read_only(ListA) in ListB;
很高兴听到任何建议。 谢谢你
你可以用这个
keep for each in ListA {
it in ListB;
};
您的意思是希望 ListA 始终在 ListB 之前生成吗? 除了大小之外,ListB 是否还有其他限制?