я хочу передавать его во множество разных функций, чтобы каждый раз его не расписывать, хочется сделать type alias для него.
type Callback = FnMut(...) -> ... – нельзя.
type Callback = impl FnMut(...) -> ... – нестабильная фича.
Неужели нет адекватного стабильного способа?
Можно сделать trait CallbackFn: FnMut..... и потом использовать impl CallbackFn
А трейт CallbackFn автоматически заимплементится для замыкания? Потому что, насколько я помню, этот синтаксис не имплементит трейт-родитель для типа, а лишь задаёт требование, чтобы он был заимплеменчен.
Ну и impl CallbackFn for T: FnMut(....) {}
Обсуждают сегодня