tuples
Provides many useful tools related to tuples
- Support no-std
- Support wasm
- AsRef
- AsMut
- AsOption
- AsResult
- AsDeref
- AsDerefMut
- TupleGet
- Transpose Option
- Transpose Result
- Cloned
- Copied
- Flatten
- Combin
- Split
- Mapping
- Iter
- IntoIter
- FromIter
- Collect
- Meta Trait
- Shorthand Macro
- Call
- Apply
- Sort
Examples
-
map
let a = ; let b = a.map; assert_eq!; -
mapN
let a = ; let b = a.map3; assert_eq!; -
map_all
let a = ; let b = a.map_all; assert_eq!; -
as_ref
let t = ; let = t.as_ref; assert_eq!; assert_eq!; assert_eq!; -
cloned
let a = ; let b = a.cloned; assert_eq! -
flatten
let a = ; let b = a.flatten; assert_eq!; -
meta
let a = ; assert_eq!; let b = ; assert_eq!; -
get
let a = ; assert_eq!; let mut a = ; *a.get_mut = 6; -
iter
let a = .into_iter .map .>; let b: = ; assert_eq!;let a = .into_iter .map .>; let b: = Some; assert_eq!;let a = .into_iter .map .>; let b: = ; assert_eq!; -
transpose
let a = Some.transpose; assert_eq!; let b = .transpose; assert_eq!;let a: = ; let b: = a.transpose; assert_eq!;let a: = ; let b: = a.transpose; assert_eq!;let a: = ; let b = a.; assert_eq!; -
combin
let a = .push_right; assert_eq!; let b = .push_left; assert_eq!; let c = .concat; assert_eq! -
split
- split_parts
let t = ; let a = t.split_2_parts; assert_eq!; let b = t.split_3_parts; assert_eq!; let c = t.split_4_parts; assert_eq!; let d = t.split_5_parts; assert_eq!; - split_at
let t = ; let a = t.split_at_1; assert_eq!; let b = t.split_at_3; assert_eq!; let c = t.split_at_5; assert_eq!; - split_by
let t = ; let t2 = ; let a = t.split_by_2; assert_eq!; let b = t2.split_by_2; assert_eq!; let c = t.split_by_3; assert_eq!; let d = t2.split_by_3; assert_eq!; let e = t.split_by_6; assert_eq!; - split_to_tuple_at
let t = ; let a = t.split_to_tuple_at_1; assert_eq!; let b = t.split_to_tuple_at_3; assert_eq!; let c = t.split_to_tuple_at_5; assert_eq!; - split_to_tuple_by
let t = ; let t2 = ; let a = t.split_to_tuple_by_2; assert_eq!; let b = t2.split_to_tuple_by_2; assert_eq!; let c = t.split_to_tuple_by_3; assert_eq!; let d = t2.split_to_tuple_by_3; assert_eq!; let e = t.split_to_tuple_by_6; assert_eq!;
- split_parts
-
call
let r = .call; assert_eq!; -
apply
let a = ; let r = foo.apply_tuple; assert_eq! -
sort
currently implemented-
selection sort
let mut a = ; a.sort_selection; assert_eq!
-