C++ in Maguyva: klassen- en aanroepgrafen voor grote codebases
C++ verbergt het echte doel van een aanroep achter namespaces, overloads en virtuele dispatch. De graaf helpt een agent het te vinden.
Extensies
.c, .c++, .cc, .cpp, +6 meer
Maguyva ondersteunt C met AST, symbolen en graaf, zodat AI-agents functies, structs, includes en aanroepers volgen in systeem-, firmware- en bibliotheekcode.
C heeft geen klassen of modules om code te ordenen. De structuur zit in functieaanroepen, headers en structs, en dezelfde naam kan opduiken in commentaar, macro’s en stringliterals. Export- en annotatiemacro’s omhullen declaraties, waardoor tools die alleen puur C kunnen parsen struikelen. Voor een agent is de aanroepgraaf de veilige eerste stap.
Maguyva bouwt die graaf, zodat een agent kan zien wat een functie bereikt en wat haar bereikt voordat hij een wijziging voorstelt.
Maguyva dekt .c en .h. Functiedefinities worden als symbolen geëxtraheerd, en structs en unions zijn in structureel zoeken te selecteren als typedefinities. #include-directives worden importrelaties.
Export- en zichtbaarheidsmacro’s (patronen zoals FOO_API, DLLEXPORT of LIBEXPORT) en annotatiemacro’s voor thread safety (zoals GUARDED_BY en REQUIRES) worden vóór het parsen gemaskeerd, zodat declaraties die erin zijn verpakt nog steeds als declaraties worden geparseerd. Bodies van functieachtige macro’s worden geparseerd; die van objectachtige macro’s niet.
De graaf legt aanroepen vast, includes, instantiëring via compound literals, typeverwijzingen, lees- en schrijfacties, en control flow. Ongeveer 124 aanroepen uit de C-standaardbibliotheek (printf, malloc, free, memcpy, strlen en vergelijkbare) worden uit de relaties gefilterd, zodat de projectcode opvalt.
uart_write aan, rechtstreeks of via andere functies?” (dependency_search incoming)config.h, en welke van zijn structs gebruiken ze?” (dependency_search, daarna find_symbol)get_task_context).h staat in de extensielijsten van C, C++ en Objective-C, dus headers in bomen met meerdere talen worden door die profielen gedeeld.text_pattern_search wanneer je elke malloc of memcpy nodig hebt.Koppel een repository via de snelstart en bekijk daarna de ondersteuningsmatrix op de compatibiliteitspagina. Lees voor C++-code in dezelfde boom de C++-gids.
Beste toepassing
Agentworkflows
Enginedetails
Nuttige MCP-instappunten
Gebruik het voor een functie- of structnaam wanneer je de definitie en elke verwijzing nodig hebt.
Gebruik incoming-traversal op een gedeelde functie voordat de signatuur of foutafhandeling verandert.
Gebruik het voor prompts zoals "leg uit hoe een pakket van de ontvangstinterrupt naar de protocolparser gaat".
Gerelateerde gidsen
C++ verbergt het echte doel van een aanroep achter namespaces, overloads en virtuele dispatch. De graaf helpt een agent het te vinden.
Extensies
.c, .c++, .cc, .cpp, +6 meer
Relevant wanneer je AI-ondersteuning in Rust wilt zonder de structurele guardrails te verliezen die Rust de moeite waard maken.
Extensies
.rs