Como passar funções anônimas como parâmetros no Rust?

Eu tenho brincado comRust a semana passada. Parece que não consigo descobrir como passar uma função que é definida como um parâmetro ao chamar o método e não encontrei nenhuma documentação que mostre que eles são usados dessa maneira.

É possível definir uma função na lista de parâmetros ao chamar uma função noRust?

Isto é o que eu tentei até agora ...

fn main() {

    // This works
    thing_to_do(able_to_pass);

    // Does not work
    thing_to_do(fn() {
        println!("found fn in indent position");
    });

    // Not the same type
    thing_to_do(|| {
        println!("mismatched types: expected `fn()` but found `||`")
    });
}

fn thing_to_do(execute: fn()) {
    execute();
}

fn able_to_pass() {
    println!("Hey, I worked!");
}

questionAnswers(1)

yourAnswerToTheQuestion