funkjon

Crates.iofunkjon
lib.rsfunkjon
version1.0.2
sourcesrc
created_at2024-01-19 19:45:54.53869
updated_at2024-04-12 22:05:35.224708
descriptionOne of the worst macros this world has ever been (dis)graced with.
homepagehttps://github.com/david-d-h/funkjon
repositoryhttps://github.com/david-d-h-/funkjon
max_upload_size
id1105672
size5,211
David (david-d-h)

documentation

README

Funkjon - a bad macro

With funkjon, you too can create your very own function.

Usage:

funkjon!(greet :: name {
    println!("Hello, {name}.");
} as (String) -> Unit);

greet("David".to_string());

By the way, Unit is the return type. It is equivalent to (). You can change it by just putting something other than Unit next to the right arrow (->).

Usage with generics:

funkjon!(greet ::<T: std::fmt::Display>:: name {
    println!("Hello, {name}.");
} as (T) -> Unit);

greet("David");

Or with a where clause

funkjon!(greet ::<T>:: name {
    println!("Hello, {name}.");
} as (T) -> Unit
    where T: std::fmt::Display,
);

greet("David");
Commit count: 0

cargo fmt