172 похожих чатов

Всем привет! И с НГ! Есть функция с таким заголовком: pub fn

start_loop<F>(&mut self, listen: &str, threads: usize, func: F) where F: Fn(Option<&mut ByteStream>) -> FuncResult + Send + Copy + 'static {
...
}
Можно ли как-то тип F куда-то в type alias вынести?

9 ответов

12 просмотров

нет

Revertron-⚛ Автор вопроса
Dmytro Polunin
нет

Очень жаль, было бы полезно так выносить и делать компактные описания :(

Revertron ⚛
Очень жаль, было бы полезно так выносить и делать ...

максимум ты можешь в трейт отдельный вынести trait MyFn: Fn(Option<&mut ByteStream>) -> FuncResult + Send + Copy + 'static {} impl<F> MyFn for F where F: Fn(Option<&mut ByteStream>) -> FuncResult + Send + Copy + 'static {} pub fn start_loop<F>(&mut self, listen: &str, threads: usize, func: F) where F: MyFunc { ... }

Revertron-⚛ Автор вопроса
Dmytro Polunin
максимум ты можешь в трейт отдельный вынести trai...

Не, не стоит разводить сущности ради такого :(

Revertron-⚛ Автор вопроса
Revertron ⚛
Не нравится мне такая норма.

Ну современное программирование не любит монстуозные классы, интерфейсы, функции и другие сущности, трейты не исключение

Я не про твой пример, а в целом, о том что маленькие самодостаточные трейты это ок

Revertron-⚛ Автор вопроса
⬜️🟦⬜️ Andrew
Я не про твой пример, а в целом, о том что маленьк...

Не, это понятно. Когда они используются по назначению, то есть в качестве интерфейсов, это норма :)

Похожие вопросы

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
кто-то пользуется компонентами rx ? как их лучше ставить, через OPM? (lazarus)
Iluha Companets
15
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
есть тут кто-то , кто только начал изучать си? если проходите курс на степике или как-то сами изучаете, пишите, может, скооперируемся?..
Eule
25
Слушайте, ещё такая интересная задачка. Сделан аудит действий пользователей через триггеры в базе, соответственно каждый пользователь имеет свой логин и пароль в базе. Это пре...
Сергей Бычков
12
Скажите, тут нет проблемы? IMyInterface1 = interface function GetInterface2: IInterface2; ... function TMyInterface.GetInterface2: IInterface2; begin Result := TI...
Ruslan aka DUDE
18
вопрос по москвину - не понимаю вот такого вопроса похоже Сколько разных всегда завершающихся функций с типом a -> a -> b -> a -> a можно реализовать? Две функции одинаково...
Fedor
11
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
t.me/<username> и tg://user?id=<id> отваливаются по понятным причинам
Denis 🐍|👑 | darling! 🥰
7
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
Карта сайта