2018-08-30 14:18:55 +02:00
|
|
|
//@ run-pass
|
2020-03-27 21:56:19 +01:00
|
|
|
#![allow(unused_braces)]
|
2015-03-22 13:13:15 -07:00
|
|
|
|
2015-02-03 06:12:43 -05:00
|
|
|
fn foo(i: isize) -> isize { i + 1 }
|
2012-02-05 09:56:18 -08:00
|
|
|
|
2015-01-02 17:32:54 -05:00
|
|
|
fn apply<A, F>(f: F, v: A) -> A where F: FnOnce(A) -> A { f(v) }
|
2012-02-05 09:56:18 -08:00
|
|
|
|
2013-02-01 19:43:17 -08:00
|
|
|
pub fn main() {
|
2015-02-02 11:52:08 -05:00
|
|
|
let f = {|i| foo(i)};
|
2013-05-18 22:02:45 -04:00
|
|
|
assert_eq!(apply(f, 2), 3);
|
2012-02-05 09:56:18 -08:00
|
|
|
}
|