7f427f86bd
Option::map, for example, looks like this: option<t>, (t -> u) -> option<u> This syntax searches all of the HOFs in Rust: traits Fn, FnOnce, and FnMut, and bare fn primitives.
13 lines
379 B
Rust
13 lines
379 B
Rust
#![feature(never_type)]
|
|
|
|
pub struct First<T>(T);
|
|
pub struct Second<T>(T);
|
|
pub struct Third<T>(T);
|
|
|
|
pub fn fn_ptr(_: fn (First<u32>) -> !, _: bool) {}
|
|
pub fn fn_once(_: impl FnOnce (Second<u32>) -> !, _: u8) {}
|
|
pub fn fn_mut(_: impl FnMut (Third<u32>) -> !, _: i8) {}
|
|
pub fn fn_(_: impl Fn (u32) -> !, _: char) {}
|
|
|
|
pub fn multiple(_: impl Fn(&'static str, &'static str) -> i8) {}
|