أخطاء مترجم Rustخطأ
E0373E0373 — قد تعيش الإغلاقة أطول من المتغير المُلتقَط
تلتقط الإغلاقة مرجعاً لمتغير قد لا يعيش طويلاً بما يكفي.
rustcargo
أسباب هذا الخطأ
تستعير الإغلاقة متغيراً محلياً، لكنها قد تعيش أطول من نطاق ذلك المتغير. هذا شائع عند تمرير الإغلاقات إلى خيوط التنفيذ أو تخزينها في هياكل البيانات.
كيفية الإصلاح
استخدم الكلمة المفتاحية move لنقل الملكية: move || { ... }. استنسخ المتغير قبل الإغلاقة إن كنت بحاجة للنسخة الأصلية. تأكد من أن البيانات المُلتقَطة تعيش بما يكفي لعمر الإغلاقة.
رموز أخطاء ذات صلة
أخطاء مترجم Rustخطأ
E0308E0308 — أنواع غير متطابقة
النوع المتوقع لا يتطابق مع النوع الفعلي المُقدَّم.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0658E0658 — ميزة غير مستقرة مستخدمة
ميزة لم تُستقَر بعد في Rust تُستخدم دون بوابة الميزة.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0317E0317 — تعبير if قد يفتقر إلى فرع else
تعبير if مستخدَم كقيمة يفتقر إلى فرع else.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0119E0119 — تنفيذات Trait متعارضة
يوجد تنفيذان أو أكثر للـ trait نفسها للنوع نفسه.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0277E0277 — السمة غير مُنفَّذة
النوع لا يُنفّذ السمة المطلوبة.
rustcargo
عرض التفاصيل أخطاء مترجم Rustخطأ
E0425E0425 — لا يمكن إيجاد القيمة في هذا النطاق
معرّف مستخدم غير معرَّف في النطاق الحالي.
rustcargo
عرض التفاصيل