isoprenoid

Crates.ioisoprenoid
lib.rsisoprenoid
version0.1.3
created_at2024-11-22 10:34:42.775294+00
updated_at2025-12-16 18:03:09.4517+00
descriptionisoprenoid is the signals runtime framework backing flourish.
homepage
repositoryhttps://github.com/Tamschi/flourish
max_upload_size
id1457257
size96,781
Tamme Schichler (Tamschi)

documentation

README

isoprenoid

isoprenoid is the signals runtime framework backing flourish.
(See also isoprenoid-unsend and flourish-unsend for a thread-local alternative.)

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!

Commit count: 340

cargo fmt