Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rust-lang/stacker
Manual segmented stacks for Rust
https://github.com/rust-lang/stacker
Last synced: 3 days ago
JSON representation
Manual segmented stacks for Rust
- Host: GitHub
- URL: https://github.com/rust-lang/stacker
- Owner: rust-lang
- License: apache-2.0
- Created: 2015-07-13T22:13:11.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-11-13T11:23:24.000Z (about 1 month ago)
- Last Synced: 2024-12-11T22:03:37.295Z (10 days ago)
- Language: Rust
- Size: 226 KB
- Stars: 295
- Watchers: 19
- Forks: 54
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# stacker
[![Build Status](https://github.com/rust-lang/stacker/actions/workflows/test.yml/badge.svg)](https://github.com/rust-lang/stacker/actions)
[Documentation](https://docs.rs/stacker)
A stack-growth library for Rust. Enables annotating fixed points in programs
where the stack may want to grow larger. Spills over to the heap if the stack
has hit its limit.This library is intended on helping implement recursive algorithms.
```toml
# Cargo.toml
[dependencies]
stacker = "0.1"
```## Platform Support
This library currently uses psm for its cross platform capabilities, with a
notable exception of Windows, which uses an implementation based on Fibers. See
the README for psm for the support table.On all unsupported platforms this library is a noop. It should compile and run,
but it won't actually grow the stack and code will continue to hit the guard
pages typically in place.# License
This project is licensed under either of
* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or
https://www.apache.org/licenses/LICENSE-2.0)
* MIT license ([LICENSE-MIT](LICENSE-MIT) or
https://opensource.org/license/mit)at your option.
### Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in this project by you, as defined in the Apache-2.0 license,
shall be dual licensed as above, without any additional terms or conditions.