default_kwargs 0.1.0

The macro wich enables you to use default and keyword arguments in Rust
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#![warn(clippy::all, clippy::pedantic, clippy::nursery, rustdoc::all)]

use default_kwargs::{default_args, keyword_args};

#[derive(Debug, PartialEq)]
struct MyStruct;

default_args! {
    fn thing(x: MyStruct, y: i32 = 69) -> (MyStruct, i32) {
        (x, y)
    }
}

fn main() {
    let (r, s) = keyword_args! { thing(MyStruct) };
    assert_eq!(r, MyStruct);
    assert_eq!(s, 69);
}