Skip to main content

Crate libsais_rs

Crate libsais_rs 

Source
Expand description

Rust translation of upstream libsais 2.10.4 by Ilya Grebnov.

This module exposes the 32-bit suffix array, BWT, unBWT, PLCP and LCP entry points (mirroring libsais.h). The 16-bit (libsais16), 64-bit (libsais64) and 16-bit/64-bit (libsais16x64) variants live in the sibling modules.

Re-exports§

pub use libsais16::libsais16;
pub use libsais16::SaSint as SaSint16;
pub use libsais16::SaUint as SaUint16;
pub use libsais16x64::libsais16x64;
pub use libsais16x64::SaSint as SaSint16x64;
pub use libsais16x64::SaUint as SaUint16x64;
pub use libsais64::libsais64;
pub use libsais64::SaSint as SaSint64;
pub use libsais64::SaUint as SaUint64;

Modules§

libsais16
Rust translation of upstream libsais 2.10.4 by Ilya Grebnov.
libsais64
Rust translation of upstream libsais 2.10.4 by Ilya Grebnov.
libsais16x64
Rust translation of upstream libsais 2.10.4 by Ilya Grebnov.

Structs§

Context
ThreadCache
ThreadState
UnbwtContext

Constants§

ALPHABET_SIZE
LIBSAIS_FLAGS_BWT
LIBSAIS_FLAGS_GSA
LIBSAIS_FLAGS_NONE
LIBSAIS_LOCAL_BUFFER_SIZE
LIBSAIS_PER_THREAD_CACHE_SIZE
SAINT_BIT
SAINT_MAX
SAINT_MIN
SUFFIX_GROUP_BIT
SUFFIX_GROUP_MARKER
UNBWT_FASTBITS

Functions§

create_ctx
Creates the libsais context that allows reusing allocated memory with each libsais operation. In multi-threaded environments, use one context per thread for parallel executions.
create_ctx_omp
Creates the libsais context that allows reusing allocated memory with each parallel libsais operation using OpenMP. In multi-threaded environments, use one context per thread for parallel executions.
free_ctx
Destroys the libsass context and free previusly allocated memory.
libsais
Constructs the suffix array of a given string.
libsais_bwt
Constructs the burrows-wheeler transformed string (BWT) of a given string.
libsais_bwt_aux
Constructs the burrows-wheeler transformed string (BWT) of a given string with auxiliary indexes.
libsais_bwt_aux_ctx
Constructs the burrows-wheeler transformed string (BWT) of a given string with auxiliary indexes using libsais context.
libsais_bwt_aux_omp
Constructs the burrows-wheeler transformed string (BWT) of a given string with auxiliary indexes in parallel using OpenMP.
libsais_bwt_ctx
Constructs the burrows-wheeler transformed string (BWT) of a given string using libsais context.
libsais_bwt_omp
Constructs the burrows-wheeler transformed string (BWT) of a given string in parallel using OpenMP.
libsais_ctx
Constructs the suffix array of a given string using libsais context.
libsais_gsa
Constructs the generalized suffix array (GSA) of given string set.
libsais_gsa_ctx
Constructs the generalized suffix array (GSA) of given string set using libsais context.
libsais_gsa_omp
Constructs the generalized suffix array (GSA) of given string set in parallel using OpenMP.
libsais_int
Constructs the suffix array of a given integer array. Note, during construction input array will be modified, but restored at the end if no errors occurred.
libsais_int_omp
Constructs the suffix array of a given integer array in parallel using OpenMP. Note, during construction input array will be modified, but restored at the end if no errors occurred.
libsais_lcp
Constructs the longest common prefix array (LCP) of a given permuted longest common prefix array (PLCP) and a suffix array.
libsais_lcp_omp
Constructs the longest common prefix array (LCP) of a given permuted longest common prefix array (PLCP) and a suffix array in parallel using OpenMP.
libsais_omp
Constructs the suffix array of a given string in parallel using OpenMP.
libsais_plcp
Constructs the permuted longest common prefix array (PLCP) of a given string and a suffix array.
libsais_plcp_gsa
Constructs the permuted longest common prefix array (PLCP) of a given string set and a generalized suffix array (GSA).
libsais_plcp_gsa_omp
Constructs the permuted longest common prefix array (PLCP) of a given string set and a generalized suffix array (GSA) in parallel using OpenMP.
libsais_plcp_int
Constructs the permuted longest common prefix array (PLCP) of a integer array and a suffix array.
libsais_plcp_int_omp
Constructs the permuted longest common prefix array (PLCP) of a given integer array and a suffix array in parallel using OpenMP.
libsais_plcp_omp
Constructs the permuted longest common prefix array (PLCP) of a given string and a suffix array in parallel using OpenMP.
libsais_unbwt
Constructs the original string from a given burrows-wheeler transformed string (BWT) with primary index.
libsais_unbwt_aux
Constructs the original string from a given burrows-wheeler transformed string (BWT) with auxiliary indexes.
libsais_unbwt_aux_ctx
Constructs the original string from a given burrows-wheeler transformed string (BWT) with auxiliary indexes using libsais reverse BWT context.
libsais_unbwt_aux_omp
Constructs the original string from a given burrows-wheeler transformed string (BWT) with auxiliary indexes in parallel using OpenMP.
libsais_unbwt_ctx
Constructs the original string from a given burrows-wheeler transformed string (BWT) with primary index using libsais reverse BWT context.
libsais_unbwt_omp
Constructs the original string from a given burrows-wheeler transformed string (BWT) with primary index in parallel using OpenMP.
unbwt_create_ctx
Creates the libsais reverse BWT context that allows reusing allocated memory with each libsais_unbwt_* operation. In multi-threaded environments, use one context per thread for parallel executions.
unbwt_create_ctx_omp
Creates the libsais reverse BWT context that allows reusing allocated memory with each parallel libsais_unbwt_* operation using OpenMP. In multi-threaded environments, use one context per thread for parallel executions.
unbwt_free_ctx
Destroys the libsass reverse BWT context and free previusly allocated memory.

Type Aliases§

FastSint
FastUint
SaSint
SaUint