2011-07-18 10:41:35 -05:00
|
|
|
fn f[T](x: &[T]) -> T { ret x.(0); }
|
2011-07-08 07:28:46 -05:00
|
|
|
|
2011-07-18 10:41:35 -05:00
|
|
|
fn g(act: fn(&[int]) -> int ) -> int { ret act(~[1, 2, 3]); }
|
2011-07-08 07:28:46 -05:00
|
|
|
|
|
|
|
fn main() {
|
2011-07-27 07:19:39 -05:00
|
|
|
assert (g(f) == 1);
|
2011-07-18 10:41:35 -05:00
|
|
|
let f1: fn(&[str]) -> str = f;
|
2011-07-27 07:19:39 -05:00
|
|
|
assert (f1(~["x", "y", "z"]) == "x");
|
2011-07-18 10:41:35 -05:00
|
|
|
}
|