when-example.x10 366 B

123456789101112131415161718
  1. class OneBuffer {
  2. var datum:Object = null;
  3. var filled:Boolean = false;
  4. def send(v:Object) {
  5. when (!filled) {
  6. datum = v;
  7. filled = true;
  8. }
  9. }
  10. def receive():Object {
  11. when (filled) {
  12. val v = datum;
  13. datum = null;
  14. filled = false;
  15. return v;
  16. }
  17. }
  18. }