1
0
forked from ROMEO/nexosim

8 Commits

Author SHA1 Message Date
Serge Barral
0f1d876aed Return both simulation and scheduler at init 2024-11-15 16:52:24 +01:00
Serge Barral
b5aea810ae Merge step_by and step_until into a unique method
Now that `step_by` returns an error anyway (it was unfaillible before),
there is no more incentive to keep it as a separate method.
The `step_until` method now accepts an `impl Deadline`, which covers
both cases (`Duration` and `MonotonicTime`).
2024-11-14 17:01:33 +01:00
Serge Barral
ba1e668447 Report panics as errors + identify panicking model
The build context is now passed as a mutable reference due to the need
to mutate data when adding a model.

Contains small unrelated cleanups and documentation improvements too.
2024-11-13 19:40:58 +01:00
Serge Barral
49e713262b Check clock sync with configurable tolerance 2024-11-12 11:34:17 +01:00
Serge Barral
e6901386cf Add support for simulation timeouts 2024-11-09 12:17:27 +01:00
Serge Barral
e7b64524e0 Report deadlocked models and their malbox size 2024-10-28 12:25:02 +01:00
Serge Barral
1cfaa00f9e Make execution failible, impl deadlock detection
TODO: return the list of models involved in a deadlock.

Note that Many execution errors are not implemented at all at the
moment and will need separate PRs, namely:
- Terminated
- ModelError
- Panic
2024-10-20 12:35:44 +02:00
Serge Barral
6b43fcf704 Simplify gRPC backend arch + remove wasm backend 2024-09-08 17:03:56 +02:00