C++ i Maguyva: klasse- og kallgrafer for store kodebaser
C++ skjuler det egentlige kallmålet bak navnerom, overlastinger og virtuell dispatch. Grafen hjelper en agent med å finne det.
Filendelser
.c, .c++, .cc, .cpp, +6 til
Maguyva støtter Swift med AST, symboler og graf, slik at AI-agenter kan følge protokoller, extensions, initialisatorer og observatører i iOS- og macOS-kode.
Swift sprer én type over mange steder. En struct deklareres i én fil, får atferd fra extensions i tre andre og oppfyller protokoller som er definert i en pakke. Tilstandsendringer gjemmer seg i beregnede egenskaper og willSet / didSet-observatører. En agent som leser én fil om gangen, går glipp av det meste.
Maguyva indekserer strukturen, slik at en agent kan se medlemmene, protokolloppfyllelsene og kallerne til en type samlet.
Maguyva dekker .swift. Kallbare symboler omfatter funksjoner, init og deinit, subscripts, gettere og settere for beregnede egenskaper samt willSet / didSet-observatører, slik at kode som endrer tilstand kan søkes som symboler i stedet for å bli begravd i egenskapskropper.
Medlemmer som deklareres i structs, enums, protokoller og extensions, kvalifiseres med eiertypen sin (for eksempel CartStore.add), og medlemmer som legges til i en extension, tilskrives den utvidede typen. Generiske parametere, lister over protokolloppfyllelse og suffiksene ? / ! fjernes fra definisjonsnavnene, så oppslag bruker det rene navnet. Kall beholder self. og klassekvalifisering, og trailing closures teller med i kallets aritet.
Grafen registrerer kall, protokolloppfyllelse, arv, overstyringer, instansiering, attributter, typereferanser, lesinger og skrivinger samt throw-kanter.
PaymentProvider, og hvor opprettes hver av dem?» (dependency_search)CartStore.add, og fra hvilke visninger?» (find_symbol, deretter dependency_search incoming)get_task_context).swift-kildekode er knyttet til Swift. Storyboard- og XIB-filer står ikke på listen over filendelser, så koblinger i Interface Builder ligger utenfor grafen.print, debugPrint, NSLog og assertions filtreres ut av relasjonene og er derfor ikke kanter i grafen. Bruk text_pattern_search for dem.Koble til et repositorium med hurtigstarten, og se deretter støttematrisen på kompatibilitetssiden. Hvis du leverer samme produkt på Android, bør du lese veiledningen for Kotlin.
Best egnet
Agent-arbeidsflyter
Motordetaljer
Nyttige MCP-inngangspunkter
Bruk det for et type-, protokoll- eller metodenavn når du trenger definisjonen og referansene.
Bruk det på en protokoll for å finne typer som oppfyller den, eller incoming på en metode for å finne kallere.
Bruk det til prompter som «forklar hvordan et pushvarsel når frem til innboksskjermen».
Relaterte guider
C++ skjuler det egentlige kallmålet bak navnerom, overlastinger og virtuell dispatch. Grafen hjelper en agent med å finne det.
Filendelser
.c, .c++, .cc, .cpp, +6 til
Kotlin skjuler mye kobling i mottakere og lambdaer. Grafen henter den frem igjen.
Filendelser
.kt, .kts