Size: a a a

Rust — русскоговорящее сообществo

2020 October 10

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Kitsu
Ага, учитывая что в эту репу вообще кроме него никто не контрибьютит, если он забьет, то проект с очень высокой вероятностью умрет
ты сейчас про cranelift или rustc-codegen-cranelift?
источник

K

Kitsu in Rust — русскоговорящее сообществo
Mikail Bagishov
ты сейчас про cranelift или rustc-codegen-cranelift?
второе
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Ну это менее страшно по идее
источник

G

GWM in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Option<Option<u8>> занимает всего два байта, например, а не четыре, как может показаться
А почему должно казаться что четыре?
источник

K

Kitsu in Rust — русскоговорящее сообществo
Mikail Bagishov
Ну это менее страшно по идее
Мне лично wasm runtime не нужен, вдобавок уже вроде как есть нормальные реализации рантайма.
А вот возможность ускорить разработку за счет уменьшения времени компиляции — это прям очень приятно. Ну и, если снизить стоимость CI тоже неплохо кмк
источник

K

Kitsu in Rust — русскоговорящее сообществo
GWM
А почему должно казаться что четыре?
tag + tag + u8 + padding
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Kitsu
Мне лично wasm runtime не нужен, вдобавок уже вроде как есть нормальные реализации рантайма.
А вот возможность ускорить разработку за счет уменьшения времени компиляции — это прям очень приятно. Ну и, если снизить стоимость CI тоже неплохо кмк
так cranelift никто и не убивал, его просто переместили в репозиторий wasmtime же
источник

G

GWM in Rust — русскоговорящее сообществo
Kitsu
tag + tag + u8 + padding
Ага, спасибо
источник

p

polunin.ai in Rust — русскоговорящее сообществo
а есть .and_then для Result только для Err?
Err(1).err_then(|res| Ok(res+1)) // 2
источник

K

Kitsu in Rust — русскоговорящее сообществo
polunin.ai
а есть .and_then для Result только для Err?
Err(1).err_then(|res| Ok(res+1)) // 2
or_else?
источник

Э

Эрик in Rust — русскоговорящее сообществo
источник

p

polunin.ai in Rust — русскоговорящее сообществo
impl<F, Ctx, V> ViewFactory for F 
   where
       F: Fn(Ctx) -> V,
       V: View
{
   type Ctx = Ctx;
   type View = V;
   fn construct(&self, ctx: Self::Ctx) -> Self::View {
       self(ctx)
   }
}

ругается что the type parameter `Ctx` is not constrained by the impl trait, self type, or predicates. Какие есть способы обхода этого ограничения?
источник

Э

Эрик in Rust — русскоговорящее сообществo
polunin.ai
impl<F, Ctx, V> ViewFactory for F 
   where
       F: Fn(Ctx) -> V,
       V: View
{
   type Ctx = Ctx;
   type View = V;
   fn construct(&self, ctx: Self::Ctx) -> Self::View {
       self(ctx)
   }
}

ругается что the type parameter `Ctx` is not constrained by the impl trait, self type, or predicates. Какие есть способы обхода этого ограничения?
Ctx замени на TCtx, и проверь, скомпилится ли.
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Эрик
Ctx замени на TCtx, и проверь, скомпилится ли.
да оно и на V ругается тоже)
источник

Э

Эрик in Rust — русскоговорящее сообществo
И F запихай после этих типов.
источник

Э

Эрик in Rust — русскоговорящее сообществo
impl<TCtx, TV, F>
источник

p

polunin.ai in Rust — русскоговорящее сообществo
не, не сработало
источник

K

Kitsu in Rust — русскоговорящее сообществo
polunin.ai
impl<F, Ctx, V> ViewFactory for F 
   where
       F: Fn(Ctx) -> V,
       V: View
{
   type Ctx = Ctx;
   type View = V;
   fn construct(&self, ctx: Self::Ctx) -> Self::View {
       self(ctx)
   }
}

ругается что the type parameter `Ctx` is not constrained by the impl trait, self type, or predicates. Какие есть способы обхода этого ограничения?
struct Wrapper<F, Ctx, V>
where
   F: Fn(Ctx) -> V,
{
   f: F,
   _c: PhantomData<Ctx>,
   _v: PhantomData<V>,
}
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Kitsu
struct Wrapper<F, Ctx, V>
where
   F: Fn(Ctx) -> V,
{
   f: F,
   _c: PhantomData<Ctx>,
   _v: PhantomData<V>,
}
хм, некрасиво, ну да ладно
источник

K

Kitsu in Rust — русскоговорящее сообществo
а, стоп, можно же импл для Fn просто сделать
источник