Crates.io | ps |
lib.rs | ps |
version | 0.1.0 |
source | src |
created_at | 2018-09-15 06:04:17.651289 |
updated_at | 2018-09-15 06:04:17.651289 |
description | A safe wrapper around `std::mem::transmute` |
homepage | |
repository | https://github.com/lfairy/ps |
max_upload_size | |
id | 84814 |
size | 17,884 |
This is a proof-of-concept library
that lets you cast between arbitrary types
in a safe way.
In other words, it's a safe std::mem::transmute
!
let mut string_map: HashMap<u32, String> = HashMap::new();
string_map.insert(42, "world".into());
let bytes_map: HashMap<u32, Vec<u8>> =
ps::hash_map_values(ps::string_bytes()).cast(string_map);
assert_eq!(map[42], b"world");