Files
@ f6771292dc6d
Branch filter:
Location: CSY/reowolf/testdata/parser/positive/16.pdl - annotation
f6771292dc6d
470 B
text/plain
Refactor code related to scoping variables and labels
1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 2982ea49738a 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 2982ea49738a 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 | #version 100
composite main() {
channel xo -> xi;
new a(xi);
new c(xo);
}
primitive a(in x) {
sync {
msg m = get(x);
assert m.length == 5;
assert m[0] == 'h';
assert m[1] == 'e';
assert m[2] == 'l';
assert m[3] == 'l';
assert m[4] == 'o';
}
}
primitive b(out x) {
synchronous (msg m) {
put(x, m);
}
}
// or
primitive c(out x) {
sync {
msg m = create(5);
m[0] = 'h';
m[1] = 'e';
m[2] = 'l';
m[3] = 'l';
m[4] = 'o';
put(x, m);
}
}
|