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:
tokioasync-stdsmolwasm-bindgen-futures
Installation
[]
= "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.