Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Daniel-Liu-c0deb0t/triple_accel
/ functions
Functions
97 in github.com/Daniel-Liu-c0deb0t/triple_accel
⨍
Functions
97
◇
Types & classes
13
↓ 28 callers
Function
levenshtein_simd_k_with_opts
Returns the Levenshtein distance, bounded by a cost threshold `k`, between two strings and optionally, the edit traceback, using SIMD acceleration, wi
src/levenshtein.rs:714
↓ 23 callers
Function
levenshtein_search_simd_with_opts
Returns an iterator over `Match`s by searching through the text `haystack` for the pattern `needle` using SIMD acceleration, with extra options. Note
src/levenshtein.rs:1911
↓ 21 callers
Function
levenshtein_naive_k_with_opts
( a: &[T], b: &[T], k: u32, trace_on: bool, costs: EditCosts, )
src/levenshtein.rs:376
↓ 20 callers
Function
levenshtein_search_naive_with_opts
Returns an iterator over `Match`s by searching through the text `haystack` for the pattern `needle` using the naive algorithm, with extra options. No
src/levenshtein.rs:1589
↓ 14 callers
Function
levenshtein_naive_with_opts
( a: &[T], b: &[T], trace_on: bool, costs: EditCosts, )
src/levenshtein.rs:148
↓ 8 callers
Function
levenshtein_naive
Returns the Levenshtein distance between two strings using the naive scalar algorithm. # Arguments `a` - first string (slice) `b` - second string (sl
src/levenshtein.rs:105
↓ 8 callers
Method
upper_bound
(&self)
src/jewel.rs:499
↓ 7 callers
Function
alloc_str
(len: usize)
src/lib.rs:197
↓ 6 callers
Function
fill_str
(dest: &mut [u8], src: &[u8])
src/lib.rs:229
↓ 6 callers
Function
hamming_naive
Returns the hamming distance between two strings by naively counting mismatches. The length of `a` and `b` must be the same. # Arguments `a` - first
src/hamming.rs:36
↓ 6 callers
Function
levenshtein
Returns the Levenshtein distance between two strings using SIMD acceleration. Note that `levenshtein_exp` may be much faster if the number of edits b
src/levenshtein.rs:1397
↓ 6 callers
Function
levenshtein_exp
Returns the Levenshtein distance between two strings using exponential search and SIMD acceleration. This may be much more efficient than `levenshtei
src/levenshtein.rs:1445
↓ 5 callers
Function
hamming_search_naive_with_opts
Returns an iterator over `Match`s by naively searching through the text `haystack` for the pattern `needle`, with extra options. Only matches with le
src/hamming.rs:96
↓ 5 callers
Function
rdamerau
Returns the restricted Damerau-Levenshtein distance between two strings using SIMD acceleration. Note that `rdamerau_exp` may be much faster if the n
src/levenshtein.rs:1419
↓ 5 callers
Function
rdamerau_exp
Returns the restricted Damerau-Levenshtein distance between two strings using exponential search and SIMD acceleration. This may be much more efficie
src/levenshtein.rs:1516
↓ 4 callers
Function
hamming_simd_parallel
Returns the hamming distance between two strings by counting mismatches using SIMD vectors to increment multiple counters in parallel. The length of
src/hamming.rs:317
↓ 4 callers
Function
levenshtein_simd_k
Returns the Levenshtein distance, bounded by a cost threshold `k`, between two strings, using SIMD acceleration. This will return `None` if the Leven
src/levenshtein.rs:677
↓ 3 callers
Function
hamming_search_simd_with_opts
Returns an iterator over `Match`s by searching through the text `haystack` for the pattern `needle` using SIMD, with extra options. This is done by u
src/hamming.rs:454
↓ 3 callers
Function
hamming_simd_movemask
Returns the hamming distance between two strings by counting mismatches using the SIMD movemask intrinsic. The length of `a` and `b` must be the same
src/hamming.rs:354
↓ 2 callers
Method
check_search
For Levenshtein searches, the cost of transpositions must be less than or equal to cost of gaps. This is important for free gaps at the beginning of
src/levenshtein.rs:67
↓ 2 callers
Function
hamming_search_simd
Returns an iterator over best `Match`s by searching through the text `haystack` for the pattern `needle` using SIMD. This is done by counting mismatc
src/hamming.rs:422
↓ 2 callers
Function
hamming_words_128
Returns the hamming distance between two strings by counting mismatches in chunks of 128 bits. The length of `a` and `b` must be the same. Both `a` a
src/hamming.rs:249
↓ 2 callers
Function
hamming_words_64
Returns the hamming distance between two strings by efficiently counting mismatches in chunks of 64 bits. The length of `a` and `b` must be the same.
src/hamming.rs:176
↓ 2 callers
Function
levenshtein_search_simd
Returns an iterator over the best `Match`s by searching through the text `haystack` for the pattern `needle` using SIMD acceleration. The best matche
src/levenshtein.rs:1866
↓ 2 callers
Function
rand_alloc_str
(length: usize, rng: &mut R)
benches/rand_benchmarks.rs:251
↓ 2 callers
Function
rand_hamming_mutate
(a: &[u8], k: u32, rng: &mut R)
benches/rand_benchmarks.rs:161
↓ 2 callers
Function
rand_levenshtein_mutate
(a: &[u8], k: u32, rng: &mut R)
benches/rand_benchmarks.rs:207
↓ 2 callers
Function
rand_levenshtein_pair
(length: usize, k: u32, rng: &mut R)
benches/rand_benchmarks.rs:200
↓ 2 callers
Function
rand_str
(length: usize, rng: &mut R)
benches/rand_benchmarks.rs:240
↓ 2 callers
Function
translate_str
(chars: &mut Vec<char>, s: &str)
src/levenshtein.rs:609
↓ 1 callers
Function
check_no_null_bytes
(s: &[u8])
src/lib.rs:237
↓ 1 callers
Function
hamming_search_naive
Returns an iterator over best `Match`s by naively searching through the text `haystack` for the pattern `needle`. This is done by naively counting mi
src/hamming.rs:70
↓ 1 callers
Function
levenshtein_search_naive
Returns an iterator over the best `Match`s by searching through the text `haystack` for the pattern `needle` using the naive algorithm. The best matc
src/levenshtein.rs:1549
↓ 1 callers
Function
rand_hamming_needle_haystack
(needle_len: usize, haystack_len: usize, num_match: usize, k: u32, rng: &mut R)
benches/rand_benchmarks.rs:126
↓ 1 callers
Function
rand_hamming_pair
(length: usize, k: u32, rng: &mut R)
benches/rand_benchmarks.rs:154
↓ 1 callers
Function
rand_levenshtein_needle_haystack
(needle_len: usize, haystack_len: usize, num_match: usize, k: u32, rng: &mut R)
benches/rand_benchmarks.rs:175
Function
_mm256_adds_epu32
(a: __m256i, b: __m256i)
src/jewel.rs:843
Function
_mm_adds_epu32
(a: __m128i, b: __m128i)
src/jewel.rs:1906
Function
bench_rand_hamming
(c: &mut Criterion)
benches/rand_benchmarks.rs:7
Function
bench_rand_hamming_search
(c: &mut Criterion)
benches/rand_benchmarks.rs:33
Function
bench_rand_levenshtein
(c: &mut Criterion)
benches/rand_benchmarks.rs:55
Function
bench_rand_levenshtein_k
(c: &mut Criterion)
benches/rand_benchmarks.rs:77
Function
bench_rand_levenshtein_search
(c: &mut Criterion)
benches/rand_benchmarks.rs:100
Method
blendv_mut
(&mut self, b: &Self, mask: &Self)
src/jewel.rs:608
Method
count_mismatches
(a_ptr: *const u8, b_ptr: *const u8, len: usize)
src/jewel.rs:2320
Method
double_min_length
(new_gap: &Self, res_cont_gap: &mut Self, new_gap_length: &Self, res_cont_gap_length: &mut Self)
src/jewel.rs:769
Method
fmt
(&self, f: &mut fmt::Formatter)
src/jewel.rs:794
Method
fmt_internal
(s: &AvxNx16x16, f: &mut fmt::Formatter)
src/jewel.rs:798
Function
hamming
Returns the hamming distance between two strings using the best method. The length of `a` and `b` must be the same. This will automatically fall back
src/hamming.rs:390
Function
hamming_search
Returns an iterator over best `Match`s by searching through the text `haystack` for the pattern `needle` using SIMD. This will automatically fall bac
src/hamming.rs:588
Method
insert_first
(&mut self, val: u32)
src/jewel.rs:588
Method
insert_first_max
(&mut self)
src/jewel.rs:594
Method
insert_last_0
(&mut self, val: u32)
src/jewel.rs:560
Method
insert_last_1
(&mut self, val: u32)
src/jewel.rs:567
Method
insert_last_2
(&mut self, val: u32)
src/jewel.rs:574
Method
insert_last_max
(&mut self)
src/jewel.rs:581
Function
levenshtein_exp_with_opts
Returns the Levenshtein distance between two strings, and optionally, the edit traceback, using exponential search and SIMD acceleration. Extra option
src/levenshtein.rs:1480
Function
levenshtein_naive_k
Returns the Levenshtein distance, bounded by a cost threshold `k`, between two strings, using the naive scalar algorithm. This will return `None` if
src/levenshtein.rs:342
Function
levenshtein_search
Returns an iterator over best `Match`s by searching through the text `haystack` for the pattern `needle` using SIMD acceleration. The best matches ar
src/levenshtein.rs:2508
Function
levenshtein_simd_k_str
Returns the Levenshtein distance, bounded by a cost threshold `k`, between two utf8 encoded strings, using SIMD acceleration. # Arguments `a` - first
src/levenshtein.rs:641
Function
levenstein_naive_str
Returns the Levenshtein distance between two strings using the naive scalar algorithm. # Arguments `a` - first string (&str) `b` - second string (&st
src/levenshtein.rs:123
Method
loadu
(ptr: *const u8, len: usize)
src/jewel.rs:2264
Method
mm_count_mismatches
(a_ptr: *const u8, b_ptr: *const u8, len: usize)
src/jewel.rs:2297
Method
new
Create a new `EditCosts` struct, checking for whether the specified costs are valid. # Arguments `mismatch_cost` - cost of a mismatch edit, which mus
src/levenshtein.rs:38
Method
repeating
(val: u32, len: usize)
src/jewel.rs:480
Method
repeating_max
(len: usize)
src/jewel.rs:490
Method
shift_left_1
(a: &Self, res: &mut Self)
src/jewel.rs:673
Method
shift_left_1_mut
(&mut self)
src/jewel.rs:616
Method
shift_left_2_mut
(&mut self)
src/jewel.rs:633
Method
shift_right_1
(a: &Self, res: &mut Self)
src/jewel.rs:690
Method
shift_right_1_mut
(&mut self)
src/jewel.rs:650
Method
slow_extract
(&self, i: usize)
src/jewel.rs:538
Method
slow_insert
(&mut self, i: usize, val: u32)
src/jewel.rs:548
Method
slow_loadu
(&mut self, idx: usize, ptr: *const u8, len: usize, reverse: bool)
src/jewel.rs:510
Method
static_upper_bound
()
src/jewel.rs:504
Function
test_basic_hamming_naive
()
tests/basic_tests.rs:6
Function
test_basic_hamming_search_naive
()
tests/basic_tests.rs:19
Function
test_basic_hamming_search_simd
()
tests/basic_tests.rs:32
Function
test_basic_hamming_simd_movemask
()
tests/basic_tests.rs:75
Function
test_basic_hamming_simd_parallel
()
tests/basic_tests.rs:88
Function
test_basic_hamming_words_128
()
tests/basic_tests.rs:60
Function
test_basic_hamming_words_64
()
tests/basic_tests.rs:45
Function
test_basic_levenshtein
()
tests/basic_tests.rs:198
Function
test_basic_levenshtein_exp
()
tests/basic_tests.rs:226
Function
test_basic_levenshtein_naive
()
tests/basic_tests.rs:101
Function
test_basic_levenshtein_naive_k_with_opts
()
tests/basic_tests.rs:310
Function
test_basic_levenshtein_search_naive
()
tests/basic_tests.rs:580
Function
test_basic_levenshtein_search_simd
()
tests/basic_tests.rs:684
Function
test_basic_levenshtein_simd_k_with_opts
()
tests/basic_tests.rs:430
Function
test_basic_rdamerau
()
tests/basic_tests.rs:254
Function
test_basic_rdamerau_exp
()
tests/basic_tests.rs:282
Function
test_trace_on_levenshtein_naive
()
tests/basic_tests.rs:164
Function
test_trace_on_levenshtein_naive_k_with_opts
()
tests/basic_tests.rs:396
Function
test_trace_on_levenshtein_simd_k_with_opts
()
tests/basic_tests.rs:546
Method
triple_argmin
(sub: &Self, a_gap: &Self, b_gap: &Self, res_min: &mut Self)
src/jewel.rs:706
Method
triple_min_length
(sub: &Self, a_gap: &Self, b_gap: &Self, sub_length: &Self, a_gap_length: &Sel
src/jewel.rs:735
Method
vector_count_mismatches
(a: &Self, b_ptr: *const u8, len: usize)
src/jewel.rs:2369