Size: a a a

2021 April 26

П

Пух in rust_offtopic
Взять ссылку можно
источник

П

Пух in rust_offtopic
А ещё можно сделать somefunc(), который отдает владение
источник

П

Пух in rust_offtopic
Но к переменной не присобачивать
источник

B

Börgar in rust_offtopic
а, это >1 использования
источник

П

Пух in rust_offtopic
Не, это <1
источник

П

Пух in rust_offtopic
fn somefunc() -> SomeType
источник

EP

Egor Pugin in rust_offtopic
ну тогда зачем кому-то писать либу, использующую лсл либу, чтобы у юзеров потом программу отобрали?
источник

П

Пух in rust_offtopic
Но все равно вроде владение под линейный тип подходит, хз
источник

B

Börgar in rust_offtopic
ого, а как взять ссылку(1) и дроп(2) итого <1
источник

TK

Traveller Kolsky in rust_offtopic
Допустим, есть у тебя своя шайтан-коллекция, выдающая уникальный индекс на вставленное значение. Индекс, разумеется, при утере не сможет вызвать дроп значения в коллекции нормальным способом (без ub и spsc), а вместо того требует вызов явного remove. Если забыть вызвать, то будет утечка.
источник

TK

Traveller Kolsky in rust_offtopic
let _ = x;
источник

ИЛ

Иван Лещенко... in rust_offtopic
Да, есть такое
источник

ИЛ

Иван Лещенко... in rust_offtopic
И это тоже, ага
источник

B

Börgar in rust_offtopic
ого а шо это за шайтан коллекция такая
источник

ИЛ

Иван Лещенко... in rust_offtopic
Для первого кейса есть костыль в виде must_use и линта unused_must_use
источник

ИЛ

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

П

Пух in rust_offtopic
Ну примерно так пытались сделать scoped thread стдлибный
источник

B

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

TK

Traveller Kolsky in rust_offtopic
Да мало ли, разные варианты бывают. Скажем, со своей виртуальной таблицей вызовов.
источник

П

Пух in rust_offtopic
Но там тупо паника кидалась, когда дроп вызывался на айтеме
источник