easy_switch 0.2.0

A macro for traditional C-style switch statements
Documentation
  • Coverage
  • 100%
    2 out of 2 items documented2 out of 2 items with examples
  • Size
  • Source code size: 14.24 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 184.23 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • Homepage
  • Repository
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • dzfrias

easy_switch

Build status Crates.io Docs Status

A macro to emulate switch statements in C-style languages. Get rid of those long if/else if chains!

Syntax

Use the switch! macro to get started! This will look like a match expression, but of course does no actual pattern matching.

use easy_switch::switch;

#[derive(PartialEq, Eq)]
struct Example {
    field: i32,
    field2: i32,
}

impl Example {
    pub fn new(field2: i32) -> Self {
        Self {
            field: 10,
            field2,
        }
    }
}

let switchable = Example::new(10);
let result = switch! { switchable;
    Example::new(50), 50 == 50 => 50,
    Example::new(20), 50 == 50, 20 == 20 => 20,
    _ => 0,
};
assert_eq!(0, result);

Check out the docs for more information on this macro.

License

This crate is licensed under the MIT license.