# divsufsort This crate contains a Rust handmade port of Yuta Mori's `libdivsufsort`, as found on: * ## Changes The main changes from the C codebase are as follows. Instead of passing pointers to T (the original text) and SA (the suffix array), slices and indices are passed instead. This sometimes involves adding more parameters to functions (like `tr_heapsort`). Some macros (for stacks, used in `sssort` and `trsort`) have been replaced with proper Rust types. The `SAPtr` type is used to represent an index into `SA`. A/B/B* access has also been translated from C macros to Rust (inlined) functions. Cross-checking is only built when the `crosscheck` feature is enabled. It is not intended for general use, only for debugging the `divsufsort` crate. ## Authors The original C code was written by Yuta Mori. The port was done by hand, by [Amos Wenger](https://github.com/fasterthanlime). ## License `divsufsort` is released under the MIT license, same as the original. See the `LICENSE` file for details.