Αλεχ
и так далее
Αλεχ
сидеть с одной точкой зрения это просто глупо и недальновидно
Αλεχ
не говоря про то, что тупо не интересно
Αλεχ
Αλεχ
Αλεχ
если чел на +30тр/мес предложит твоему заказчику сэкономить на 10 серваках 3 лимона в год, куда ты пойдешь?
Αλεχ
полагаю, что на мороз
Alex
Αλεχ
перехода не будет
Αλεχ
если речь про новый проект например
Αλεχ
чел же не предлагал переписывать с плюсов
Kerrigan
Αλεχ
это инструмент
Αλεχ
и некоторые вещи лучше выражаются на некоторых языках
Αλεχ
это называется expression problem
vladislav
Αλεχ
со своими сильвербулетами можешь тут не рассказывать ничо
Αλεχ
Αλεχ
Народ, как превратить Future<Result<A,B>, C> в Future<A, Either<B,C>>?
Αλεχ
да эт бред же
Αλεχ
я хочу простую вещь:
let a = await A();
let a = a.map_err(|e| MyError(e))?;
let b = await B(a);
let b = b.map_err(|e| MyError(e))?;
let c = map_b(b);
c
պլհկ
Ну матчи руками
Αλεχ
не получается
պլհկ
не получается
https://play.rust-lang.org/?gist=4ad72fbc903be97c0703a66f108a9e5c&version=stable&mode=debug
պլհկ
чо не получается-то
Αλεχ
а
Αλεχ
хм
Αλεχ
ну кстати вроде норм
Αλεχ
покурю еще, мб через map_Err получится поизящнее
Αλεχ
спасибо!
Αλεχ
Получилось через map_err запилить
Αλεχ
pub fn get_file(&mut self, file_id: &str) -> impl Future<Item = File, Error = TelegramClientError> {
let url = format!("bot{}/getFile?file_id={}", self.token, file_id);
let result = self
.send(Method::GET, &url)
.map_err(|e| TelegramClientError::HyperError(e))
.and_then(|res| {
let foo = res.into_body().into_future().then(|result| {
let (item, _) = result.map_err(|(e, _)| TelegramClientError::HyperError(e))?;
let chunk = item.unwrap();
from_slice(chunk.bytes()).map_err(|e| TelegramClientError::SerdeError(e))
});
foo
});
result
}
Αλεχ
изначально был Future<SerdeResult<File, SerdeError>, HyperError>, стал Future<File, Either<SerdeError, HyperError>>
Valery
https://play.rust-lang.org/?gist=0e73f280b89a86cafd183ea004e348f4&version=stable&mode=debug
Valery
а я где-то накосепорил
Valery
и оно не компилится
да
Дорова привет здравсвути
да
Искал группу с официальным растом , где новости публикуют и сук попал сюда ((00()
да
Есть у кого эта группа?
да
Очень нужна
Sergey
Sergey
официальное не в телеге
да
Нет там по русски
Sergey
да
Новости все
да
И значок там раста самого
Sergey
պլհկ
Может он про ИГРУ
да
Нет
Cat
да
Здесь есть группа там новости публикуют из раста
да
По РУСКЕ
պլհկ
Зашквар
да
Спаспибо но энто не до
да
Там больше 2 к подписчиков
Sergey
Vladimir
Точно про игру
Vladimir
@pro.rust
Vladimir
Ещё была х)
Anton
Посоны
Anton
куда пихать -Z external-macro-backtrace
Anton
если юзаешь cargo
Anton
какой аргумент карго позволяет проставлять опции компилятора
Alexander
Вроде никакой.
Alexander
Есть какой-то пакет для карго, который это раскрывает.
Cat
➜ ~ cargo -Z help
Available unstable (nightly-only) flags:
-Z avoid-dev-deps -- Avoid installing dev-dependencies if possible
-Z minimal-versions -- Install minimal dependency versions instead of maximum
-Z no-index-update -- Do not update the registry, avoids a network request for benchmarking
-Z offline -- Offline mode that does not perform network requests
-Z unstable-options -- Allow the usage of unstable options such as --registry
Run with 'cargo -Z [FLAG] [SUBCOMMAND]'
Cat
Cat
другой вопрос что
error: unknown `-Z` flag specified: external-macro-backtrace
Vladimir
cargo build -- -Z external...
Vladimir
Попробуй
Vladimir
Если это команды rustc
Vladimir
Либо rustc вместо build
Cat
error: Found argument '-Z' which wasn't expected, or isn't valid in this context
Cat
есть такое:
RUSTFLAGS — A space-separated list of custom flags to pass to all compiler invocations that Cargo performs. In contrast with cargo rustc, this is useful for passing a flag to all compiler instances.
https://doc.rust-lang.org/cargo/reference/environment-variables.html
Антон
Да где STM есть, кроме Haskell?
Yuriy
Что вы думаете о новом Swift’e ?
Anton