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