dportable 0.1.0

Portable interface for various utilities.
Documentation

Portable interface for various utilities.

Intended targets are:

  • native platforms with tokio async runtime,
  • WebAssembly targeted to browsers, including WebWorkers, under standard single-threaded model.

Following features are provided:

  • [Mutex] and [RwLock] (using parking_lot on native platforms and [std::cell::RefCell] in WASM).
  • asynchronous [spawn] (not requiring [Send] in WASM) and sleep,
  • Timeout future,
  • dtest attribute macro to create tests for both native and WASM targets, also dtest_configure macro to configure tests to run in browser.
  • [create_non_sync_send_variant_for_wasm] utility macro for creating non-[Send] and non-[Sync] variants of traits for use in WASM.
  • [random] function.