| Crates.io | sort-const |
| lib.rs | sort-const |
| version | 1.0.1 |
| created_at | 2025-03-03 07:40:36.987479+00 |
| updated_at | 2025-03-05 07:38:17.778575+00 |
| description | Sort arrays and slices in const contexts. |
| homepage | https://docs.rs/sort-const |
| repository | https://github.com/Daniel-Aaron-Bloom/sort-const-rs |
| max_upload_size | |
| id | 1575261 |
| size | 19,197 |
A macro for sorting arrays and slices at compile time.
Just use the const_quicksort or const_shellsort macros.
use sort_const::const_quicksort;
const fn lt(a: &u8, b: &u8) -> bool {
*a < *b
}
const A: &[u8] = &const_quicksort!([3, 1, 2]);
const B: &[u8] = &const_quicksort!([3, 1, 2], |a, b| *a < *b);
const C: &[u8] = &const_quicksort!([3, 1, 2], lt);
assert_eq!(A, [1, 2, 3]);
assert_eq!(B, [1, 2, 3]);
assert_eq!(C, [1, 2, 3]);
For now, this crate uses a custom consty fork of arrayvec. bluss/arrayvec#294 should fix this.
Licensed under