Size: a a a

2020 May 07

DS

Doge Shibu in rust_offtopic
Gymmasssorla
Так полученный из метода &SomeType или Vec<SomeType::SomeOtherType>?
Т.е. я вызываю метод у &SomeType, получаю из него итератор, который перегоняю в Vec<SomeType::SomeOtherType>
источник

DS

Doge Shibu in rust_offtopic
Раст после этого продолжает считать, что этот вектор по времени жизни зависит от &SomeType, хотя SomeOtherType : 'static
источник

p

polunin.ai in rust_offtopic
trasmute 🤪
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
trasmute 🤪
Нет, в крайнем случае у меня есть альтернативный сейф вариант, но хочется это на associated типах продолжить делать
источник

r

red75prime in rust_offtopic
Doge Shibu
Раст после этого продолжает считать, что этот вектор по времени жизни зависит от &SomeType, хотя SomeOtherType : 'static
Какие сигнатуры у функций и лайфтайм параметры у типов?
источник

DS

Doge Shibu in rust_offtopic
red75prime
Какие сигнатуры у функций и лайфтайм параметры у типов?
Там чуть хитрее, сейчас скину
источник

DS

Doge Shibu in rust_offtopic
red75prime
Какие сигнатуры у функций и лайфтайм параметры у типов?
источник

DS

Doge Shibu in rust_offtopic
В реальности там больше кода, но это минимальный пример. Задача в том, чтобы как-нибудь намекнуть расту, что SomethingId не зависит от &StateType
источник

DS

Doge Shibu in rust_offtopic
Так, сам догадался
источник

DS

Doge Shibu in rust_offtopic
источник

DS

Doge Shibu in rust_offtopic
Раст похоже пока ещё плохо умеет работать с HRTB
источник

DS

Doge Shibu in rust_offtopic
Или я хочу от него слишком умного
источник

r

red75prime in rust_offtopic
fn somethings(&self) -> Self::Somethings; не работает?
источник

DS

Doge Shibu in rust_offtopic
А, не, это мне мешается в другом месте, так тоже не пойдёт.
источник

DS

Doge Shibu in rust_offtopic
red75prime
fn somethings(&self) -> Self::Somethings; не работает?
Точно так же, не пойдет для всех кейсов.
источник

DS

Doge Shibu in rust_offtopic
Это моя попытка в эмуляцию GAT'ов, по сути.
источник

DS

Doge Shibu in rust_offtopic
Мне хотелось бы, чтобы я мог написать вот так:
fn somethings<'a>(&'a self) -> Self::Somethings<'a>
источник

DS

Doge Shibu in rust_offtopic
Прикол в том, что если вручную заинлайнить HasVehicleLikeCollection и VehicleLike, то код работает отлично.
источник

DS

Doge Shibu in rust_offtopic
Там он понимает, что Vec<SomethingId> не зависит от &mut StateType
источник

DS

Doge Shibu in rust_offtopic
Самое интересное, что если возвращать не итератор, а сразу Vec<Self::Something::SomethingId>, то тоже всё ок
источник