Cat
Ευγένιος
Здрасте, давно не было.
Savely
Vitaly
Да и embedded rust интересней копать чем прокси :)
Marat
Anton
вроде успел зобанить
Мерль
Αλεχ
то что сишный код можно не линковать
Safort
Просто затем, что автору так захотелось.
Vitaly
А прокси вообще не работает?
Работает то что в мастере, но херово
Антон
Правильно, и без ног. Чтоб острелить было нельзя.
Anton
Блин почему нельзя писать, if {} else match {}
Filipp
На первый взгляд как будто можно
Cat
if a { b } else { match c { d => e, _ => f, } } можно или подразумевается другая семантика?
Anton
имелось ввыду без скобок
Anton
else { match {} } можно
Anton
else match {} нельзя
Anton
хотя по идее что мешает
Маjко
Надо написать RFC
Anton
ради специфичного кейса?
Filipp
В рфц придется много аргументации написать
Anton
if a {} else if b {} else match c {}
Filipp
А другие экспрешны без скобок работают?
Anton
ну по идее if a else { if b {} else {} } == if a {} else if b {} else {}
Anton
даже клиппи реккомендует уберать скобки если else { if {} }
Cat
потому что к else if все привыкли многолетним опытом, а else match x звучит не очень убедительно
Маjко
ради специфичного кейса?
Они все время так делают
Anton
потому что к else if все привыкли многолетним опытом, а else match x звучит не очень убедительно
ну я понимимаю, кейс довольно редкий, за все время второй раз встретился
Anton
раст? или свой код? =)
Cat
раст конеш
Anton
Ага, делать некуй
Alex
У меня есть tokio stream который возвращает данные по одному байту u8. Я могу как то этот стрим на лету превратить в набор векторов из этих байт?
Alex
т.е я хочу сгруппировать несколько байт в один используя функцию
Alex
весь день голову ломаю прост.
Alex
я надеюсь это не бегинерский вопрос
Alex
itertools к стриму прикрутить наверное не получится
Cat
> стрим на лету превратить в набор векторов на стороне приёмника? я не пробовал, но можно же сделать промежуточную функцию, которая будет слушать стрим, накапливать байты, и с какой-то перидичностью отдавать их в какой-то новый стрим и приёмник будет слушать новый стрим но это так, на ходу придумано
Alex
в общем у меня есть готовая библиотека которая байты из stdin пишет в stream
Alex
я хочу эти байты читать до переноса строки, без переноса строки
Alex
и дальше применять функцию к каждой строке.
Alex
эдакая интерактивная консоль
Cat
как сделать промежуточную функцию?
ну, как я себе это представляю: читаешь из токио-стрима, если встречаешь '\n', то его игнорируешь, и отсылаешь сформированную строку в какой-либо канал; читаешь из стрима токио дальше
Alex
алгоритм я знаю, я не понимаю как мне группировать содержимое стрима ))
Alex
в этом весь вопрос
Alex
я могу как то несколько элементов стрима сгруппировать?
Cat
я могу как то несколько элементов стрима сгруппировать?
это к профессионалам по токио, я не нашёл похожего
Alex
😓
Alex
что не работаю с токио и футурками - не оставляет ощущение что оно чертовски переусложненное
Alex
надетое поверх языка который тоже усложняет жизнь через borrowchk :)
Αλεχ
как можно вызвать футуру и синхронно дождаться результата?
Αλεχ
ради такого tokio-core надо подрубать и самому реактор доставать?
Αλεχ
я просто пользуюсь гиперовским когда сервер стартую
Anton
wait / block не оно?
Αλεχ
у меня просто ваще реактора нет
Αλεχ
только rt::run
Anton
https://docs.rs/futures/0.1.2/futures/trait.Future.html#method.wait
Anton
не?
Anton
у тебя какая версия? 0.2 ?
Αλεχ
0.1
Αλεχ
ага спасибо
Alex
чет ржу. Сделать язык где явно записывать типы, а потом создать кложурки где черт ногу сломишь где какой тип, ошибка и почему
Max
Никто не запрещает писать типы в кложурках
ㅤ
>явно записывать типы >язык с выводом типов
ㅤ
Хочешь узнать тип чего-то без IDE, напиши let v: () = фигня неизвестного типа и в ошибке компиляции увидишь тип фигни
Max
Как обычно let plus = |num: i32| -> i32 {num + 1};
Alex
Хочешь узнать тип чего-то без IDE, напиши let v: () = фигня неизвестного типа и в ошибке компиляции увидишь тип фигни
я этот прием давно знаю, теперь у меня две кложурки с разными Result<Err> и не понимаю как привести их к одному виду
Max
Alex
спасибо что напомнил
Alex
-> impl Smth не решает эту проблему?
я чет не шарю в impl stuff :/
ㅤ
-> impl Smth не решает эту проблему?
Так это для трейтов же
Alex
В общем пытаюсь сделать так чтобы вернуть два стрима