divsufsort 2.0.0

Rust port of Yuta Mori's divsufsort
Documentation

# divsufsort

This crate contains a Rust handmade port of Yuta Mori's `libdivsufsort`, as found on:

  * <https://github.com/y-256/libdivsufsort/tree/5f60d6f026c30fb4ac296f696b3c8b0eb71bd428>

## 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.