#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(dead_code)]
pub type sauchar_t = u8;
pub type saint_t = i32;
pub type saidx_t = i32;
#[link(name = "divsufsort", kind = "static")]
extern "C" {
pub fn divsufsort(T: *const sauchar_t, SA: *mut saidx_t, n: saidx_t) -> saint_t;
pub fn divbwt(T: *const sauchar_t, U: *mut sauchar_t, A: *mut saidx_t, n: saidx_t) -> saidx_t;
pub fn divsufsort_version() -> *const ::std::os::raw::c_char;
pub fn bw_transform(
T: *const sauchar_t,
U: *mut sauchar_t,
SA: *mut saidx_t,
n: saidx_t,
idx: *mut saidx_t,
) -> saint_t;
pub fn inverse_bw_transform(
T: *const sauchar_t,
U: *mut sauchar_t,
A: *mut saidx_t,
n: saidx_t,
idx: saidx_t,
) -> saint_t;
pub fn sufcheck(
T: *const sauchar_t,
SA: *const saidx_t,
n: saidx_t,
verbose: saint_t,
) -> saint_t;
pub fn sa_search(
T: *const sauchar_t,
Tsize: saidx_t,
P: *const sauchar_t,
Psize: saidx_t,
SA: *const saidx_t,
SAsize: saidx_t,
left: *mut saidx_t,
) -> saidx_t;
pub fn sa_simplesearch(
T: *const sauchar_t,
Tsize: saidx_t,
SA: *const saidx_t,
SAsize: saidx_t,
c: saint_t,
left: *mut saidx_t,
) -> saidx_t;
}