Files
@ e9c737983088
Branch filter:
Location: CSY/reowolf/examples/old/eg_protocols.pdl - annotation
e9c737983088
598 B
text/plain
fixing examples
1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e 1ae65b0b574e |
primitive forward(in i, out o) {
while(true) synchronous {
put(o, get(i));
}
}
composite dynamic(in i, out o) {
new forward(i, o);
}
primitive sync(in i, out o) {
while(true) synchronous {
if(fires(i)) {
put(o, get(i));
}
}
}
primitive sync_two(in ia, in ib, out oa, out ob) {
while(true) synchronous {
if (fires(ia)) {
put(oa, get(ia));
put(ob, get(ib));
}
}
}
primitive xor_three(in ai, out ao, in bi, out bo, in ci, out co) {
synchronous {
if (fires(ai)) put(ao, get(ai));
else if (fires(bi)) put(bo, get(bi));
else put(co, get(ci));
}
}
|