E0505E0505 — Không thể move ra khỏi nội dung đang được mượn
Một giá trị bị move trong khi vẫn đang được mượn bởi một reference.
Nguyên nhân gây ra lỗi này
Bạn đang cố move (chuyển ownership của) một giá trị đang có borrow hiệu lực. Move giá trị sẽ làm vô hiệu reference hiện tại, điều Rust ngăn chặn.
Cách sửa
Clone giá trị thay vì move nó. Kết thúc borrow trước khi move giá trị. Dùng reference thay vì chuyển ownership. Tái cấu trúc code để tránh xung đột giữa move và borrow.
Mã lỗi liên quan
E0277E0277 — Kiểu không triển khai Send
Một kiểu không triển khai Send được dùng trong ngữ cảnh yêu cầu an toàn luồng.
E0277E0277 — Trait chưa được thỏa mãn
Một kiểu không implement trait mà code yêu cầu.
clippy::map_unwrap_orClippy — map().unwrap_or() có thể rút gọn
Dùng .map().unwrap_or() có thể thay bằng .map_or().
clippy::clone_on_copyClippy — Clone trên Kiểu Copy
Phương thức clone() được gọi trên một kiểu đã implement Copy.
E0599E0599 — Không tìm thấy method X trên kiểu này
Method không tồn tại trên kiểu đã cho, hoặc trait cần thiết chưa được đưa vào scope.
E0310E0310 — Kiểu Có Thể Không Tồn Tại Đủ Lâu
Một tham số kiểu generic không thỏa mãn ràng buộc lifetime bắt buộc.