Αλεχ
fn foo(report_progress: impl Fn(f64))
Αλεχ
вместо yeild дергаешь коллбек
Αλεχ
вся разница
Vladimir
Проблема внутренних и внешних итераторов, то что ты показал, это просто внутренний итератор, также можно было б все растовые итераторы делать
Cat
Alex, так а чем тебе кастомная имплементация Iterator не подходит?
Vladimir
Пример: for_each
Vladimir
Alex, так а чем тебе кастомная имплементация Iterator не подходит?
+ имхо, из растовых генераторов можно вывести привычную форму, а наоборот нет
Cuno
do { yield return x%10; x/=10; } while (x != 0)
https://play.rust-lang.org/?gist=cb141a40d0e3198e379345dd2151bd14&version=nightly&mode=debug С небольшими плясками можно
Anonymous
Всем привет
Anonymous
Ребят сориентируйте пожалуйста по ЗП rust разработчика на фулл тайм, уровень должен быть существенно выше среднего
Anonymous
0
Ну может кормить хотя бы?
Anton
https://rustjobs.rs
Anton
https://t.me/rustlang_jobs_feed
Anonymous
Спасибо
Anton
Ну может кормить хотя бы?
нужно много знать(далеко не только Rust) и иметь опыт от 3 лет
Alexey
Я HR, а не прогер :)))
300 000 + после вычета налогов тогда
Alexey
долларов?)
Тонн гоблинского золота. Вот так встреча кстати)
Маjко
Я HR, а не прогер :)))
2500-3500 баксов миддл, сеньор от 3500, в снг, естественно, после вычета
Anton
+ обязательно удаленка, если вы не москва или питер
Маjко
Alex
у меня в компании (snips.ai) раста много, но это не россия
Anonymous
Видимо блягодаря EOS в этом году бабло гребут rust прогеры :)) 2017 шиковали Солидити разрабы :)))
Маjко
Потому что снг
Маjко
Хайрись на зарубежную удаленку или с релоком, там лучше
Anton
посоны тут пробую сделать map с into конвертацией элемента
Anton
но вариант чот не катит
Anton
let stops = self.stops.iter().map(|s| s.into()).collect::<Vec<api::GradientStop>>();
Cat
чё пишет?
Anton
мол какого хуя конвертацию из ссылки делаешь
Anton
мол имплементация есть ток для "чистого" типа
Anton
ну и плюс
Anton
the trait std::convert::From<&properties::background::GradientStop> is not implemented for webrender::webrender_api::GradientStop
Anton
И теперь я думаю
Anton
в чем разница между Into и From
Anton
и разницы в имплементациях
Anton
ни в чём
бадум тсс
Cat
только одно нельзя реализовать для сторонних типов
Cat
а другое можно
Cat
условно, ответ на какой-то вопрос на SO: "It is indeed not possible to make a impl<'a, T> Into<Foo> for &'a [T], while impl<'a, T> From<&'a [T]> for Foo is possible."
Anton
Ну From для вебрендеровского значения я сделать не смогу
Anton
вопрос в том схуяли он его вобще просит
Anton
попробую с дерефом
Денис
в чем разница между Into и From
Я не читал твой кейс, но делать надо именно фром, а инто для него автоматически выведется
Cat
^ that
Anton
чому?
это же как раз From<api::GradientStop> for GradientStop я не могу реализовать
Anton
или наоборот
Anton
?
Cat
ля, я теперь тоже запутался
Anton
Так я опять запутался но попробую как надо
Anton
Ну смотри грубо говоря From же имплементится только для структуры которой владеешь
Anton
тоесть From у себя имеет только крейт вебрендера реализовать
Anton
разве нет,
Денис
И других имплементоров нет =))
Cat
И других имплементоров нет =))
там вроде есть парочка, но о них никто не говорит и тщательно скрывают и вообще это саентология
Anton
Короче кейс у меня вот такой: #[derive(Debug, PartialEq, Clone, Serialize, Deserialize)] pub struct GradientStop { pub offset: f32, pub color: Color, } impl Into<api::GradientStop> for GradientStop { fn into(self) -> api::GradientStop { api::GradientStop { offset: self.offset, color: self.color.into(), } } } У меня есть вектор с моими стопами, и мне из него надо смапать вектор из вебрендоровских
Anton
У меня есть Into рабочий для моих
Anton
и поэтому я хуй знает как нормально это дело смапать, ибо: let stops = self.stops.iter().map(|s| *s.into()).collect::<Vec<api::GradientStop>>(); Скомпилить не дает
Cat
impl GradientStop { fn to_api_gradient_stop(&self) -> api::GradientStop { ... } }
Cat
ну это так, набрасываю
Anton
ну это так, набрасываю
это же дичь прям пизде
Anton
так, а вообще Into самоятоятельно юзать можно?
Денис
https://play.rust-lang.org/?gist=07f12fcd1bd81bc670b7c9762add9f17&version=stable&mode=debug
Anton
Ну мол Into<api::GradientStop>(&s)
Anton
короче