Crate sort_const

Source
Expand description

A macro for sorting arrays and slices at compile time.

§Usage

Just use the const_quicksort macro.

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]);

Macros§

const_quicksort
Sorts a const array or mutable slice as a const expression.
const_quicksort_adv
Sorts a const array or mutable slice as a const expression.