A discrete event simulation implemented as a kotlin custom event loop. Unfortunately, not all APIs required to pull it off are stable:
- the EventLoop API is private, which prevents hooking into runBlocking.
runSimulation
is an equivalent ofrunBlocking
, reconstructed using the public API. - the Delay API is required to properly hook into the delay function.
This API is public, but marked as internal, which requires
@OptIn(InternalCoroutinesApi::class)
.