Kotlin i Maguyva: kodgrafer för Android och JVM
Kotlin gömmer mycket koppling i mottagare och lambdor. Grafen tar fram den igen.
Filändelser
.kt, .kts
Maguyva stöder Dart med AST, symboler och graf, så att AI-agenter kan följa klasser, mixins, extensions och konstruktorer i Flutter- och Dart-kod.
Dart sprider en typ över flera konstruktioner. En klass kan ärva från en basklass, implementera flera gränssnitt och blanda in beteende från mixins via with. Extension-metoder hänger på medlemmar på typer som definieras någon annanstans, och namngivna konstruktorer och factory-konstruktorer döljer vilken klass som faktiskt byggs. Textsökning hittar namnen, men inte strukturen bakom dem.
Maguyva ger agenten den strukturen, så att den kan följa en ändring från en widget till tjänsten den är beroende av.
Maguyva täcker .dart-filer. Klasser, mixins och extensions extraheras som typer. Presetet functions i structural_search omfattar funktioner, metoder, lokala funktioner, lambdor samt generativa, const- och factory-konstruktorer. Signaturer registrerar valfria positionella och namngivna parametergrupper och static-medlemmar, och definitionsnamn tappar ett avslutande ? eller !.
Importer normaliserar import-, part- och library-direktiv och tar bort deras show-, hide- och as-satser. Ett anrop via ett importprefix, som http.get efter import 'package:http/http.dart' as http, ligger kvar i grafen.
Mottagartypningen följer parametrar, typade och initierade variabler, getters och for-in-loopar över listor, mängder och itererbara objekt, och behandlar var och dynamic som härledda typer. extends-, implements- och with-satser följs när ärvda medlemmar slås upp. Grafen registrerar också instansiering, typreferenser, läsningar och skrivningar samt undantagskanter.
CartRepository.addItem, och från vilka widgets?” (find_symbol, sedan dependency_search incoming)PaymentGateway?” (dependency_search)get_task_context)map, where och forEach, metoder på Future och Stream som then och listen samt dart:-biblioteken. Använd text_pattern_search för dem.structural_search-resultat kan en lokal funktion eller lambda överlappa den anropbara enhet som innehåller den, och getters och setters visas som metodsignaturer.Anslut ett repo med snabbstarten och kontrollera sedan stödmatrisen på kompatibilitetssidan. För andra mobila kodbaser, läs guiden för Kotlin och guiden för Swift.
Bäst lämpad för
Agentarbetsflöden
Motordetaljer
Användbara MCP-ingångar
Använd det för en widget-, repository- eller tjänsteklass när du behöver definitionen och referenserna.
Använd incoming-traversering på en repository-metod eller ett gränssnitt för att se anropare och implementationer inför en API-ändring.
Använd det för prompter som "spåra hur kassaknappen når betalnings-API:et".
Relaterade guider
Kotlin gömmer mycket koppling i mottagare och lambdor. Grafen tar fram den igen.
Filändelser
.kt, .kts
I Swift bor beteendet i protokoll och extensions. En agent måste se båda.
Filändelser
.swift