xxxxxxxxxx
import std;
void myfun(int n){
writeln(n);
}
void test(void delegate(int) fun) {
fun(42);
}
void main() {
test(toDelegate(&myfun)); // &myfun is a void function(int) so we need to convert it to delegate
test((int value) { myfun(value); }); // or you can wrap it in delegate and pass value
test(value => myfun(value)); // same as above, but using lambda syntax
}