#utils #macro #water #funny #if-match

macro-utils

Some macros to make code writing more elegant and funny

4 releases

Uses old Rust 2015

0.1.3 May 1, 2019
0.1.2 Jul 7, 2018
0.1.1 Jul 6, 2018
0.1.0 Jul 6, 2018

#317 in Procedural macros

Download history 1240/week @ 2022-11-26 987/week @ 2022-12-03 1338/week @ 2022-12-10 1103/week @ 2022-12-17 497/week @ 2022-12-24 704/week @ 2022-12-31 675/week @ 2023-01-07 476/week @ 2023-01-14 561/week @ 2023-01-21 654/week @ 2023-01-28 660/week @ 2023-02-04 494/week @ 2023-02-11 548/week @ 2023-02-18 981/week @ 2023-02-25 516/week @ 2023-03-04 402/week @ 2023-03-11

2,553 downloads per month

MIT license

16KB
186 lines

Build Status Build status

macro-utils

Some macros to help writing better code or just having fun.

Usage

To use it in your project, just add the following lines:

#[macro_use]
extern crate macro_utils;

Examples

#[macro_use]
extern crate macro_utils;

fn main() {
    let s = "bateau";

    if_match! {
        s == "voiture" => println!("It rolls!"),
        s == "avion"   => println!("It flies!"),
        s == "pieds"   => println!("It walks!"),
        s == "fusée"   => println!("It goes through space!"),
        s == "bateau"  => println!("It moves on water!"),
        else           => println!("I dont't know how it moves...")
    }

    let y = 4;
    let x = tern_c! { (y & 1 == 0) ? { "even" } : { "odd" } };
    let x = tern_python! { { "it's even" } if (y & 1 == 0) else { "it's odd" } };
    let x = tern_haskell! { if (y & 1 == 0) then { "it's even" } else { "it's odd" } };
}

No runtime deps