#macro #let #pattern #data #self #read #vec-u8

if-let-return

Simple macro for if let ... pattern

2 releases

0.1.1 May 15, 2019
0.1.0 Sep 12, 2018

#2649 in Rust patterns

Download history 8/week @ 2024-02-19 29/week @ 2024-02-26 7/week @ 2024-03-04 10/week @ 2024-03-11 4/week @ 2024-03-18 8/week @ 2024-03-25 53/week @ 2024-04-01 7/week @ 2024-04-15 4/week @ 2024-04-22

65 downloads per month

Custom license

7KB

if-let-return

Simple macros for if let ....

Usage

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);
  ...
}

No runtime deps