Crates.io | if-let-return |
lib.rs | if-let-return |
version | 0.1.1 |
source | src |
created_at | 2018-09-12 00:02:31.589246 |
updated_at | 2019-05-15 00:45:33.113642 |
description | Simple macro for `if let ... pattern` |
homepage | |
repository | https://github.com/anekos/if-let-return |
max_upload_size | |
id | 84243 |
size | 19,424 |
Simple macros for if let ...
.
if_let_some!
pub fn read(&self, wrapped_data: Option<&str>) -> Vec<u8> {
let data = if let Some(data) = wrapped_data {
data
} else {
return vec![];
}
some_function(data);
...
}
↓
pub fn read(&self, wrapped_data: Option<&str>) -> Vec<u8> {
if_let_some!(data = wrapped_data, vec![]);
some_function(data);
...
}
if_let_ok!
pub fn read(&self, wrapped_data: Result<&str, Error>) -> Vec<u8> {
let data = match wrapped_data {
Ok(data) => data,
Err(err) => return err.to_vec(),
};
some_function(data);
...
}
↓
pub fn read(&self, wrapped_data: Result<&str, Error>) -> Vec<u8> {
if_let_ok!(data = wrapped_data, |err| err.to_vec());
some_function(data);
...
}