phaller / reactive-async

Expressive deterministic concurrency in Scala
BSD 2-Clause "Simplified" License
15 stars 9 forks source link

Let dependees call callbacks #145

Closed JanKoelzer closed 6 years ago

JanKoelzer commented 6 years ago

This commit changes, when and how dependency callbacks are called. With this implementation, cells stage new values in one-element-queues and inform dependent cells to eventually dequeue this value and pass it to the callback. Cells do not call callbacks after they have been completed, as has been decided by phaller. This makes Updater.ignoreIfFinal obsolete.

This PR also includes fixes and improvements and supersede other PRs:

It adds documentation texts.

Some tests have been removed, as the semantics of puts on completed cells have been changed.