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

if-let-return

Simple macro for if let ... pattern

2 releases

0.1.1 May 15, 2019
0.1.0 Sep 12, 2018

#2762 in Rust patterns

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