Size: a a a

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

2020 August 14

D

Denis in Rust — русскоговорящее сообществo
там проблема в реализации
(в реализации вывода)
источник

t

this is not mrklf in Rust — русскоговорящее сообществo
Heorhi
он резолвится потому что это костыль временный
он резолвится, потому что ! в любой тип коэрсится
источник

RP

Roman Proskuryakov in Rust — русскоговорящее сообществo
this is not mrklf
он резолвится, потому что ! в любой тип коэрсится
в -> impl он резолвится в ()
источник

H

Heorhi in Rust — русскоговорящее сообществo
не, там есть дорожная карта в issue в которой один из пунктов убрать авторезолв ! в ()
источник

AD

Andrew Demonov in Rust — русскоговорящее сообществo
Agrailag
Раст уже распределен по другим конторам в принципе, зачем Майкрософт?
Чтобы добавить в раст поддержку COM/ActiveX
источник

D

Denis in Rust — русскоговорящее сообществo
Roman Proskuryakov
в -> impl он резолвится в ()
не совсем
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
И ещё у трейтов не хватает выразительности, чтобы имплементировать Iterator<T> для ! для любого T
источник

D

Denis in Rust — русскоговорящее сообществo
Roman Proskuryakov
в -> impl он резолвится в ()
скорее, он резолвится в (), когда не знает, во что конкретно зарезолвится
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
impl Iterator for Never {
   type Item = for<T> T;
   
   fn next(&mut self) -> Option<Self::Item> {
       match self { }
   }
}

Нужно что-то в этом роде.
источник

D

Denis in Rust — русскоговорящее сообществo
Emmanuel Goldstein
И ещё у трейтов не хватает выразительности, чтобы имплементировать Iterator<T> для ! для любого T
это да
источник

RP

Roman Proskuryakov in Rust — русскоговорящее сообществo
Denis
скорее, он резолвится в (), когда не знает, во что конкретно зарезолвится
источник

D

Denis in Rust — русскоговорящее сообществo
мы говорим о проявлении (что ты скинул) или о причине?
источник

RP

Roman Proskuryakov in Rust — русскоговорящее сообществo
в комментах от Jonas'a: This is expected behavior since todo!() is not constrained to any type, so it is inferred to (). In the second case it is constrained to T, which is provided by the caller.
источник

D

Denis in Rust — русскоговорящее сообществo
это ровно то, что я сказал :)
источник

D

Denis in Rust — русскоговорящее сообществo
(кажется)
источник

RP

Roman Proskuryakov in Rust — русскоговорящее сообществo
Так что я не вижу, issue в которой один из пунктов убрать авторезолв ! в (). хотят оставить как есть
источник

A

Apachee in Rust — русскоговорящее сообществo
Emmanuel Goldstein
fn gen_iterator() -> impl Iterator<Item = i32> {
   todo!()
}

Вот такая фигня, например
мне кажется, что это проблема impl T, который не до конца реализован, в случае с fn test() -> T код скомпилится и при вызове test запаникует
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Apachee
мне кажется, что это проблема impl T, который не до конца реализован, в случае с fn test() -> T код скомпилится и при вызове test запаникует
Ну это баг вывода типов
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Потому что на типе висит констрейнт : Trait, но вывод типов его не видит
источник

H

Heorhi in Rust — русскоговорящее сообществo
на самом деле, когда в го введут шаблоны, будут тяжелые времена для раста.... Потому что реально то чего не хватает, а остальное и перетерпеть можно
источник