wasm_sort/exchange_sorts/
quicksort.rs

1use sort::quicksort;
2use wasm_bindgen::prelude::*;
3
4#[wasm_bindgen]
5pub fn quicksort_int32array(a: &js_sys::Int32Array) -> Vec<i32> {
6    let mut v = a.to_vec();
7    quicksort(&mut v);
8    v
9}
10
11#[wasm_bindgen]
12pub fn quicksort_int16array(a: &js_sys::Int16Array) -> Vec<i16> {
13    let mut v = a.to_vec();
14    quicksort(&mut v);
15    v
16}
17
18#[wasm_bindgen]
19pub fn quicksort_int8array(a: &js_sys::Int8Array) -> Vec<i8> {
20    let mut v = a.to_vec();
21    quicksort(&mut v);
22    v
23}
24
25#[wasm_bindgen]
26pub fn quicksort_uint32array(a: &js_sys::Uint32Array) -> Vec<u32> {
27    let mut v = a.to_vec();
28    quicksort(&mut v);
29    v
30}
31
32#[wasm_bindgen]
33pub fn quicksort_uint16array(a: &js_sys::Uint16Array) -> Vec<u16> {
34    let mut v = a.to_vec();
35    quicksort(&mut v);
36    v
37}
38
39#[wasm_bindgen]
40pub fn quicksort_uint8array(a: &js_sys::Uint8Array) -> Vec<u8> {
41    let mut v = a.to_vec();
42    quicksort(&mut v);
43    v
44}
45
46#[wasm_bindgen]
47pub fn quicksort_float64array(a: &js_sys::Float64Array) -> Vec<f64> {
48    let mut v = a.to_vec();
49    quicksort(&mut v);
50    v
51}
52
53#[wasm_bindgen]
54pub fn quicksort_float32array(a: &js_sys::Float32Array) -> Vec<f32> {
55    let mut v = a.to_vec();
56    quicksort(&mut v);
57    v
58}