#run-time #signals #incremental #sdk #async #signal

isoprenoid

isoprenoid is the signals runtime framework backing flourish

2 releases

0.1.1 Nov 22, 2024
0.1.0 Nov 22, 2024

#553 in Asynchronous

Download history 210/week @ 2024-11-18 48/week @ 2024-11-25

258 downloads per month
Used in flourish

MIT/Apache

76KB
1.5K SLoC

isoprenoid

isoprenoid is the signals runtime framework backing flourish.

Distinct major versions of flourish are compatible as long as they use the same version of isoprenoid.

Features

"global_signals_runtime"

Implements SignalsRuntimeRef for GlobalSignalsRuntime.

"forbid_global_signals_runtime"

Asserts that "global_signals_runtime" is not enabled.

Quick-start

  • To create your own signals runtime, implement runtime::SignalsRuntimeRef.
  • To easily create a compatible alternative to Flourish, wrap raw::RawSignal.
    • For tighter integration with Flourish, implement its UnmanagedSignal and optionally UnmanagedSignalCell traits.
  • To write application code, use only Flourish instead.

Threading Notes

Please note that none of the function in this library are guaranteed to produce any memory barriers!

Dependencies

~0.2–5.5MB