Advertisement
Guest User

Untitled

a guest
Jan 17th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. fn main() {
  2.  
  3. // This works
  4. thing_to_do(able_to_pass);
  5.  
  6. // Does not work
  7. thing_to_do(fn() {
  8. println!("found fn in indent position");
  9. });
  10.  
  11. // Not the same type
  12. thing_to_do(|| {
  13. println!("mismatched types: expected `fn()` but found `||`")
  14. });
  15. }
  16.  
  17. fn thing_to_do(execute: fn()) {
  18. execute();
  19. }
  20.  
  21. fn able_to_pass() {
  22. println!("Hey, I worked!");
  23. }
  24.  
  25. fn main() {
  26. thing_to_do(able_to_pass);
  27.  
  28. thing_to_do(|| {
  29. println!("works!");
  30. });
  31. }
  32.  
  33. fn thing_to_do<F: FnOnce()>(func: F) {
  34. func();
  35. }
  36.  
  37. fn able_to_pass() {
  38. println!("works!");
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement