Cat
Асинхронный?
Cuno
А токио, поверх которого он написан, значит, не асинхронный?
Anton
Anton
У рокета меньше абстракций получится
Anton
Условно
Dårk
говоря о стабильности, и обертке всего кода в catch_unwind
предлагаю закидать говном, палками и пул реквестами автора либы pop3. ибо этот код паникует при любой нелетной погоде без предупреждения.
Oleg
Надо ввести модификатор panic, как unsafe, чтобы отмечать функции, которые могут паниковать
պլհկ
Судзумия
Cuno
Все функции могут паниковать
Только те, которые вызывают функции, которые могут паниковать (или сами вызывают panic), но это почти каждая первая.
Судзумия
Berkus
лучше линтером на unwrap() прогнать
Anton
でゲソ
Я тут на работе себе убунту до новой лтс обновил, лол
Kerrigan
я посмотрел баги и пока не буду
でゲソ
Сборка теперь даже продолжает работать
でゲソ
Хотя переключение языков сломалось маленько
Kerrigan
Oleg
rustup на новой убунте сломался
でゲソ
Ломать переключение?
Kerrigan
да
でゲソ
Остаётся надеяться что не сломался emscripten
Berkus
безумный вопрос - а есть какие-то либы для AOP под сабж? (Aspect-Oriented Programming)
Kerrigan
Alex
уронил раст в душе
Kerrigan
видимо нет
Судзумия
Berkus
Судзумия
Судзумия
Язык-то игрушечный
Berkus
йяп
Loo
Судзумия
Berkus
Loo
Anonymous
Диагональный сплит ещё надо добавить
Vladimir
ребзи повторю вопрос: есть ли либа которая умеет
Ref<'a, SomeEnum> превращать в Result<Ref<'a, SomeVariant>, Error> С связью внутреннего SomeVariant с одним из вариантов SomeEnum?
Loo
Денис
"Есть ли либа, которая превращает X в Y с связью внутреннего Y с одним из вариантов X?"
պլհկ
не понял задачу
Судзумия
Наркомания
Vladimir
Вот есть аналог RefCell, у его Ref есть метод map который позволяет получить Ref на часть структуры, хочется тоже самое но вместо внутренней структуры Enum, чтоб была возможность развернуть энам внутри ссылки оставив внутренности одного из вариантов только. Желательно конечно мапнуть Ref<SomeEnum> в SomeEnumAnalog в котором каждый вариант будет Ref<Variant>
Vladimir
Так понятнее?
Alex
Я бы смотрел в сторону реализации аналогичной map для Option в std.
Anton
Посоны, есть вот такой код
pub struct Store {
cluster: cluster::ClusterGet
}
pub fn store_link_information(&mut self, hash: u64, content: Vec<u8>) -> impl Future<Item = (), Error = ()> {
self.cluster
.and_then(move |cluster| cluster.create_database())
.and_then(move |db| result(db.create_trx()))
.and_then(move |trx| {
trx.set(format!("remote_{:?}", hash).as_ref(), &content);
trx.commit()
})
.and_then(|_trx| {
info!("Commited transaction...");
Ok(())
})
.map_err(|e| {
warn!("Error while saving remote page content: {:?}", e);
()
})
}
Anton
все бы ок, только он не компилится
Anton
error[E0507]: cannot move out of borrowed content
--> src/store.rs:74:9
|
74 | self.cluster
| ^^^^ cannot move out of borrowed content
Anton
Что этот наркоман от меня хочет?)
Anton
все
pub fn store_link_information(self, hash: u64, content: Vec<u8>) -> impl Future<Item = (), Error = ()> {
Vladimir
Антон
Антон
Короче, игрушечный язык
Loo
Антон
/split we need to go deeper
Great
/split I hope i written on rust
Loo
Антон
Berkus
> I hope i written on rust
я надеюсь я написал на ржавчину?
Антон
/split some variant which is too long to fit telegram window
Антон
/split lol noy monospace
kitsu
хм, а если в макс размер сообщеньки не поместится
Антон
Антон
У меня так было уже
Маjко
/split <very_long_text_from_pin>
Маjко
Упал?
Антон
Антон
@mersinvald у тебя же на ЛОРе такой же ник, как и в тележке?
Маjко
Да
Антон
А почему тут у тебя только 3 звёздочки? 🤔
պլհկ
/split unwrap