Crates.io | tuplify |
lib.rs | tuplify |
version | 1.1.4 |
source | src |
created_at | 2023-04-08 09:51:47.366089 |
updated_at | 2023-05-03 13:25:15.820972 |
description | Generic hlist/tuple library |
homepage | https://github.com/cantina-space/tuplify |
repository | https://github.com/cantina-space/tuplify |
max_upload_size | |
id | 833530 |
size | 58,700 |
Utility library that facilitates the use of tuples as generic arguments.
See individual Traits for features implementation and detailled examples.
use tuplify::*;
assert_eq!((1, 2).push_back(3), (1, 2, 3));
assert_eq!((Some(1), Some(2), Some(3)).validate(), Some((1, 2, 3)));
assert_eq!((Some(1), Some(2), None::<i32>).validate(), None);
assert_eq!((1, 2).extend((3, 4)), (1, 2, 3, 4));
assert_eq!((1, 2, 3, 4).pop_back(), (4, (1, 2, 3)));
assert_eq!((1, 2, 3, 4).uncons(), (1, (2, 3, 4)));
use tuplify::*;
assert_eq!(hcons![1, 2].push_back(3), hcons![1, 2, 3]);
assert_eq!(hcons![Some(1), Some(2), Some(3)].validate(), Some(hcons![1, 2, 3]));
assert_eq!(hcons![Ok(1), Ok(2), Err::<u32, _>("oh no")].validate(), Err("oh no"));
assert_eq!(hcons![1, 2].extend(hcons![3, 4]), hcons![1, 2, 3, 4]);
assert_eq!(hcons![1, 2, 3, 4].pop_back(), (4, hcons![1, 2, 3]));
assert_eq!(hcons![1, 2, 3, 4].uncons(), (1, hcons![2, 3, 4]));
Found a problem or have a suggestion? Feel free to open an issue.