5 unstable releases
0.5.4 | Jan 31, 2025 |
---|---|
0.4.0 | Jan 27, 2025 |
0.3.17 | Dec 22, 2024 |
0.3.16 | Oct 6, 2024 |
0.3.13 |
|
#1643 in Asynchronous
3,042 downloads per month
Used in 24 crates
(10 directly)
175KB
4.5K
SLoC
Agnostic-Lite
agnostic-lite
is a Sans-I/O abstraction layer for any async runtime.
In order to make it trivial for others to build implementations of any async runtime, this crate provides a sans-I/O implementation.
In addition, this crate is not only no_std
, but also alloc-free. This means that it can be used in environments where alloc is not available, such as embedded systems. It also has no unsafe code.
Introduction
agnostic-lite
is a Sans-I/O abstraction layer for any async runtime.
In order to make it trivial for others to build implementations of any async runtime, this crate provides a sans-I/O implementation.
In addition, this crate is not only no_std
, but also alloc-free. This means that it can be used in environments where alloc is not available, such as embedded systems. It also has no unsafe code.
agnostic-lite
splits the big Runtime
trait in agnostic
in multiple small traits:
AsyncSpawner
: trait for spawning tasksAsyncLocalSpawner
: trait for spawning local tasksAsyncSleep
: trait for sleep functionalityAsyncInterval
: trait for interval functionalityAsyncTimeout
: trait for timeout functionality
Builtin supports runtimes:
tokio
async-std
smol
wasm-bindgen-futures
Installation
[dependencies]
agnostic-lite = "0.5"
License
agnostic-lite
is under the terms of both the MIT license and the
Apache License (Version 2.0).
See LICENSE-APACHE, LICENSE-MIT for details.
Copyright (c) 2025 Al Liu.
Dependencies
~0.8–13MB
~164K SLoC