Přeskočit na obsah
Chyby kompilátoru RustChyba
E0507

E0507 — Nelze přesunout hodnotu z vypůjčené reference

Pokoušíte se přesunout hodnotu z reference, což by referenci zanechalo visící.

rustcargo

Co způsobuje tuto chybu

Přesun hodnoty z reference by zneplatnil původní data. K tomu nejčastěji dochází při pokusu o vrácení pole z vypůjčené struktury nebo při pattern matchingu na referenci.

Jak to opravit

Místo přesunu hodnotu naklonujte. Použijte .to_owned() nebo .clone() pro vytvoření vlastněné kopie. Pro výpůjčku místo přesunu použijte ref v pattern matchingu. Místo vlastněné hodnoty vraťte referenci.

Oficiální dokumentace

Související chybové kódy