Size: a a a

2021 May 31

goldstein опять in rust_offtopic
Тебе хоть с завтипами, хоть без нужно проверить индекс
источник

goldstein опять in rust_offtopic
Просто с завтипами ты его проверяешь выше по коду, а с Option — ниже по коду
источник

AN

Alex Noname in rust_offtopic
@sand_witch как там проверять надо, расскажите 😁
источник

AN

Alex Noname in rust_offtopic
Покажите
источник

AN

Alex Noname in rust_offtopic
А я пока пошёл. 😂
источник

goldstein опять in rust_offtopic
И если очень сильно хочется, то в Rust можно выразить заранее проверенный индекс
источник

goldstein опять in rust_offtopic
Без всяких завтипов, через трюк с инвариантными лайфтаймами
источник

[

[BRM]White Rabbit in rust_offtopic
Ну, берёшь, хуяришь число в gen, тебе выплевывает нужный Fin.
Если у этого fin параметр вообще можетбыть не равен параметру вектора, то те компиль зубы выбьет
источник

[

[BRM]White Rabbit in rust_offtopic
Те на типах нужно доказать, что у тебя Vect равен
источник

[

[BRM]White Rabbit in rust_offtopic
Не доказал = обосрался = не скомпилится
источник

AN

Alex Noname in rust_offtopic
Сделать функцию которая принимает Int и вектор, а выдаёт Maybe
источник

goldstein опять in rust_offtopic
Дочитал агитку?
источник

[

[BRM]White Rabbit in rust_offtopic
Ага
источник

goldstein опять in rust_offtopic
Конкретно пример с индексом реализуем в Rust без завтипов вообще
источник

goldstein опять in rust_offtopic
Делаешь
struct Index<'id> {
   inner: usize,
   _invariant: Invariant<'id>,
}

привязываешь его к обёртке над вектором с тем же лайфтаймом
источник

G

George in rust_offtopic
И шо? И как это будет работать? Технически, придётся постоянно использовать этот Index, типа,

let my_vec = IndexedVector::from(&[0, 1, 2, 3]);
let value = my_vec[Index::from(4_usize)];

И это выдаст ошибку компиляции? Или как это должно выглядеть в реальности?
источник

B

Börgar in rust_offtopic
арч
источник

r

red75prime in rust_offtopic
let index_4 = Index::get(&vec, 4).unwrap();
Index::read(&vec, index_4);
источник

p

polunin.ai in rust_offtopic
Нет
источник

ИЛ

Иван Лещенко... in rust_offtopic
А зачем оно нужно, если можно сразу получить ссылку на элемент и не тащить индекс
источник