لغة C في Maguyva: رسوم بيانية للاستدعاءات في شيفرة الأنظمة والأنظمة المدمجة
في C، الرسم البياني للاستدعاءات هو البنية المعمارية نفسها. وعلى الوكيل أن يقرأه قبل أن يعدّل.
الامتدادات
.c, .h
يدعم Maguyva لغة C++ بشجرة AST والرموز والرسم البياني، ليتمكن وكلاء الذكاء الاصطناعي من تتبّع الفئات ونطاقات الأسماء والتجاوزات الافتراضية والمستدعين في قواعد شيفرة C++ الكبيرة.
الأسماء في C++ ليست فريدة. قد يكون send دالة حرة، وعضوًا في ثلاث فئات، وتجاوزًا في فئة رابعة. وتقسّم نطاقات الأسماء والقوالب والتعريفات خارج الفئة، مثل Socket::send في ملف .cpp، النوعَ الواحد على ملفات كثيرة. يُرجع البحث النصي كل تطابق، لكنه لا يخبر الوكيل بالتطابق الذي ينتهي إليه الاستدعاء.
يفهرس Maguyva الفئات والأعضاء والاستدعاءات مع مالكيها، فيتتبّع الوكيل البنية الحقيقية قبل أن يعدّل.
يغطي Maguyva امتدادات ملفات C++ المصدرية والترويسات الشائعة، ومنها .cpp و.cc و.cxx و.hpp و.hh و.hxx. تُستخرج الفئات والـ structs والدوال، ويُنسب التعريف خارج الفئة مثل void Socket::send() إلى الفئة المالكة ونطاق أسمائها. وتُسجَّل الأعضاء الافتراضية، وتكون معاملات القوالب جزءًا من التوقيعات.
يتتبّع تحديد نوع المستقبِل المعاملاتِ والتصريحاتِ المحلية والحقولَ وحلقات for القائمة على النطاق وauto، وينظر داخل unique_ptr وshared_ptr وoptional، فيُحَلّ استدعاء مثل conn->send() إلى الفئة الصحيحة. وتغذّي عبارات الفئات الأساسية الوراثةَ، وتُعدّ تعابير new إنشاءً لمثيلات.
يُطبَّق حجب وحدات ماكرو التصدير والتعليقات نفسه المطبَّق في C. ويُستبعد من العلاقات نحو 273 اسمًا من المكتبة القياسية (std::cout وstd::endl وprintf وما شابهها). ويسجّل الرسم البياني الاستدعاءات وعبارات include والوراثة والتجاوزات وإنشاء المثيلات ومراجع الأنواع والقراءات والكتابات وحواف throw.
Renderer::draw، ومن يستدعيه؟” (dependency_search)OrderBook::match وكل من يستدعيه.” (find_symbol)get_task_context).h في قوائم امتدادات C وC++ وObjective-C، لذا تتوزّع الترويسات في الأشجار التي تمزج C وC++ بين هذه الملفات التعريفية.text_pattern_search لوحدات الماكرو ولاستخدامات std::.اربط مستودعًا عبر دليل البدء السريع، ثم راجع مصفوفة الدعم في صفحة التوافق. وإذا كان جزء من الشجرة C صافية، فاقرأ أيضًا دليل لغة C.
الأنسب لـ
سير عمل الوكلاء
تفاصيل المحرك
نقاط دخول مفيدة عبر MCP
استخدمه مع اسم مؤهَّل بالكامل مثل `OrderBook::match` حين تحتاج إلى التعريف والمستدعين.
قبل تغيير التوقيع، استخدمه على فئة أساسية أو أسلوب افتراضي للعثور على التجاوزات والمستدعين.
استخدمه لمطالبات مثل «اشرح كيف تصل رسالة بيانات السوق إلى محرّك الاستراتيجية».
أدلة ذات صلة
في C، الرسم البياني للاستدعاءات هو البنية المعمارية نفسها. وعلى الوكيل أن يقرأه قبل أن يعدّل.
الامتدادات
.c, .h
ذات صلة عندما تريد مساعدة بالذكاء الاصطناعي في Rust دون فقدان الضوابط البنيوية التي تجعل استخدام Rust يستحق العناء.
الامتدادات
.rs