| Crates.io | ref-map |
| lib.rs | ref-map |
| version | 0.1.3 |
| created_at | 2020-01-26 08:26:38.312126+00 |
| updated_at | 2021-08-15 03:45:50.039641+00 |
| description | Helper trait for Option and Result to map references |
| homepage | |
| repository | https://github.com/ammongit/rust-ref-map |
| max_upload_size | |
| id | 202090 |
| size | 12,237 |
Rust crate for convenience traits on Option<T> and Result<T, E>.
Has no dependencies, and should work on any Rust release channel.
Three methods are provided, ref_map() for Some(_) and Ok(_), and ref_map_err() for Err(_).
This allows easily mapping borrowed values from maybe values.
use ref_map::*;
let string: Option<String> = Some("hello world\n".into());
// Without ref-map:
// the .as_ref() is necessary because otherwise it tries to consume the String
let message: Option<&str> = string.as_ref().map(|s| s.trim());
// With ref-map:
let message: Option<&str> = string.ref_map(|s| s.trim());
ref_map() is also provided for Result<T, E> for Ok, and ref_map_err() for Err.
Copyright (C) 2020-2021 Ammon Smith
Available under the MIT License.