https://github.com/malbarbo/fera
An aggregation of algorithms, data structures and supporting crates
https://github.com/malbarbo/fera
algorithms data-structures graph graph-algorithms graph-generation
Last synced: 6 days ago
JSON representation
An aggregation of algorithms, data structures and supporting crates
- Host: GitHub
- URL: https://github.com/malbarbo/fera
- Owner: malbarbo
- License: mpl-2.0
- Created: 2017-11-10T13:06:03.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-08-09T06:21:29.000Z (over 3 years ago)
- Last Synced: 2025-10-26T03:35:37.600Z (5 months ago)
- Topics: algorithms, data-structures, graph, graph-algorithms, graph-generation
- Language: Rust
- Size: 489 KB
- Stars: 11
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# fera
An aggregation of algorithms, data structures and supporting crates.
This crate does not directly provides any item, it only reexports modules
corresponding to others crates. Each module is enable with a feature with the
same name. All features are disable by default. To avoid longer compile times,
it is recommend to enable only the features that will be used.
[](https://docs.rs/fera/)
[](https://crates.io/crates/fera)
## Crates
- [`fera-array`]: Arrays traits and implementations (prefixed, copy on write,
nested, etc).
- [`fera-ext`]: Extensions traits for [`std`] types.
- [`fera-fun`]: Free functions for fun programming.
- [`fera-graph`]: Graph data structures and algorithms.
- [`fera-optional`]: An optional value trait and some implementations.
- [`fera-unionfind`]: [Union-find] (disjoint-set) data structure
implementation.
## Example
To use `ext` and `fun` crates in this example:
```rust
extern crate fera;
use fera::ext::VecExt;
use fera::fun::vec;
fn main() {
assert_eq!(vec![3, 2, 1], vec(1..4).reversed());
}
```
it is necessary to add this to `Cargo.toml`:
```toml
[dependencies]
fera = { version = "0.3", features = ["ext", "fun"] }
```
## License
Licensed under [Mozilla Public License 2.0][mpl]. Contributions will be
accepted under the same license.
[`fera-array`]: https://github.com/malbarbo/fera/tree/master/array
[`fera-ext`]: https://github.com/malbarbo/fera/tree/master/ext
[`fera-fun`]: https://github.com/malbarbo/fera/tree/master/fun
[`fera-graph`]: https://github.com/malbarbo/fera/tree/master/graph
[`fera-optional`]: https://github.com/malbarbo/fera/tree/master/optional
[`fera-unionfind`]: https://github.com/malbarbo/fera/tree/master/unionfind
[mpl]: https://www.mozilla.org/en-US/MPL/2.0/
[`std`]: https://doc.rust-lang.org/stable/std/
[Union-find]: https://en.wikipedia.org/wiki/Disjoint-set_data_structure