function_overloading 1.0.0

a crate that adds function overloading
Documentation
use function_overloading::def;

def! {
    pub foo;
    fn (a: u32, b: u32) -> u32 {
        return a + b;
    };
    fn (a: &str, b: &str) -> usize {
        return a.len() + b.len();
    };
    fn (a: String) {
        println!("{}", a);
    };
    fn (a: &str) {
        println!("{}", a);
    };
    fn(a: f32, b: f32) -> f32 {
        return a * b;
    };
}



fn main() {
    println!("{}", foo(("1", "2")));
    println!("{}", foo((1, 2)));
    println!("{}", foo((1.0, 2.0)));
    foo(String::from("hello"));
    foo("world");
}