Expand description
Welcome to stdworld! This crate is an alternative to the Rust std crate, with a focus on use-cases not supported by Rust.
§Motivation: Issues with std
While Rust works fine for a lot of use-cases, there are some use-cases that Rust either neglects, such as code/library unloading, or is actively hostile against, such as signal handling.
This crate provides a library-only approach that addresses those use-cases.
§Structure
This crate is structured in modules analogous to Rust’s own std. However, these are explicitly not drop-in replacements! Many of them differ in safety (often with the stdworld equivalent being safe), but all of them differ in types.
§Stability
This crate is currently unusable.
You can look at the code tho.
§Acknowledgements
This crate was inspired by crates such as qcell
and our own selfref
. We
would also like to thank the various trans developers. Finally, we would
like to blame tom7, for getting his PhD in 2008.
Modules§
- env
- APIs to interact with the program environment.
- os
- signal
- APIs to interact with signal handling.
- thread
- APIs to interact with threads.
Structs§
- Main
World - The world as seen by an application’s main thread.
- Thread
World - The world as seen by an application’s other threads.
- Unloadable
Main World - The world as seen by an unloadable plugin running on an application’s main thread.