Size: a a a

2020 November 27

a

antuan in Rust Beginners
точнее, наверное, "не должен"
источник

MB

Mikail Bagishov in Rust Beginners
Не должно, да
источник

a

antuan in Rust Beginners
понял. спасибо за помощь.
источник

ДБ

Дмитрий Беляев... in Rust Beginners
подскажите плиз, можно ли как то склонировать стрим из tokio, чтобы потом в 2 местах его читать и получать идентичные даные? у данных Clone есть
источник

ДБ

Дмитрий Беляев... in Rust Beginners
ну кроме как руками обертку писать?
источник

MB

Mikail Bagishov in Rust Beginners
Во futures-util я такого комбинатора (аналогичного shared() для футур) не вижу
источник

С

Сергей in Rust Beginners
Mikail Bagishov
Во futures-util я такого комбинатора (аналогичного shared() для футур) не вижу
если превратить в futures::Stream, можно обернуть в Either и использовать https://docs.rs/futures/0.3.8/futures/stream/trait.StreamExt.html#method.left_stream
источник

MB

Mikail Bagishov in Rust Beginners
Сергей
если превратить в futures::Stream, можно обернуть в Either и использовать https://docs.rs/futures/0.3.8/futures/stream/trait.StreamExt.html#method.left_stream
1) это и есть futures::Stream, токио его просто реэкспортит
2) И как это поможет?
источник

ДБ

Дмитрий Беляев... in Rust Beginners
а может можно как то по другому решить, у меня кейс примерно такой:
есть стрим с событиями, ну и есть некая реакция на эти события, я хочу посередине запись в лог добавить
источник

MB

Mikail Bagishov in Rust Beginners
вообще, можно заиспользовать tokio::sync::broadcast
источник

MB

Mikail Bagishov in Rust Beginners
В этом канале каждое посланное сообщение будет прочитано каждым из ресиверов
источник

С

Сергей in Rust Beginners
Mikail Bagishov
1) это и есть futures::Stream, токио его просто реэкспортит
2) И как это поможет?
В кейсе, который ты описал уже потом - никак )
Если ты хочешь инжект в стрим, можно в then/map возвращать стрим из нескольких элементов и делать flat_map
источник

MB

Mikail Bagishov in Rust Beginners
Я никаких кейсов не описывал.

Вот что хотел ОП:

> склонировать стрим из tokio, чтобы потом в 2 местах его читать и получать идентичные даные
источник

С

Сергей in Rust Beginners
Mikail Bagishov
Я никаких кейсов не описывал.

Вот что хотел ОП:

> склонировать стрим из tokio, чтобы потом в 2 местах его читать и получать идентичные даные
да, сорян, не ты. но ОП потом написал

у меня кейс примерно такой:
есть стрим с событиями, ну и есть некая реакция на эти события, я хочу посередине запись в лог добавить
источник

ДБ

Дмитрий Беляев... in Rust Beginners
Mikail Bagishov
вообще, можно заиспользовать tokio::sync::broadcast
спасибо, это подходит
как понял спокойно смогу существующему коду аналогичный стрим отдать через это https://docs.rs/tokio/0.3.4/tokio/sync/broadcast/struct.Receiver.html#method.into_stream
источник

a

antuan in Rust Beginners
можно заставить serde пробрасывать таг внутрь значений энумов?
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=01a63af558752a010c5f5a6fdb741d01
источник

С

Саша in Rust Beginners
свой Deserialize для перечисления реализовать, точно сработает

но я думаю ты это и сам знаешь 🙂
источник

a

antuan in Rust Beginners
Саша
свой Deserialize для перечисления реализовать, точно сработает

но я думаю ты это и сам знаешь 🙂
слишком банально. привет :)
источник

/

/bin/cat in Rust Beginners
не знаю насколько вопрос про раст, но возникла проблема с rocket
источник

/

/bin/cat in Rust Beginners
от юзера он запускается только через sudo из-за 80 порта
источник