Kotlin στο Maguyva: γράφοι κώδικα για Android και JVM
Η Kotlin κρύβει πολλές διασυνδέσεις σε δέκτες και συναρτήσεις λάμδα. Ο γράφος τις φέρνει ξανά στο φως.
Επεκτάσεις
.kt, .kts
Το Maguyva υποστηρίζει τη Dart με AST, σύμβολα και γράφο, ώστε οι πράκτορες AI να ακολουθούν κλάσεις, mixin, επεκτάσεις και κατασκευαστές σε κώδικα Flutter και Dart.
Η Dart απλώνει έναν τύπο σε πολλές κατασκευές. Μια κλάση μπορεί να κληρονομεί από μία βασική κλάση, να υλοποιεί πολλές διεπαφές και να αναμειγνύει συμπεριφορά από mixin μέσω with. Οι μέθοδοι επέκτασης προσθέτουν μέλη σε τύπους που ορίζονται αλλού, ενώ οι επώνυμοι κατασκευαστές και οι κατασκευαστές factory κρύβουν ποια κλάση δημιουργείται στην πράξη. Η αναζήτηση κειμένου βρίσκει τα ονόματα, όχι τη δομή πίσω τους.
Το Maguyva δίνει αυτή τη δομή στον πράκτορα, ώστε να ακολουθήσει μια αλλαγή από ένα γραφικό στοιχείο έως την υπηρεσία από την οποία εξαρτάται.
Το Maguyva καλύπτει αρχεία .dart. Οι κλάσεις, τα mixin και οι επεκτάσεις εξάγονται ως τύποι. Η προεπιλογή functions στο structural_search καλύπτει συναρτήσεις, μεθόδους, τοπικές συναρτήσεις, lambda και γενετικούς κατασκευαστές, καθώς και κατασκευαστές const και factory. Οι υπογραφές καταγράφουν ομάδες προαιρετικών θεσιακών και επώνυμων παραμέτρων και μέλη static· τα επιθήματα ? και ! αφαιρούνται από τα ονόματα ορισμών.
Οι εισαγωγές κανονικοποιούν τις οδηγίες import, part και library και απορρίπτουν τους όρους show, hide και as. Μια κλήση μέσω προθέματος εισαγωγής, όπως http.get μετά από import 'package:http/http.dart' as http, παραμένει στον γράφο.
Η τυποποίηση δέκτη παρακολουθεί παραμέτρους, μεταβλητές με δηλωμένο τύπο ή αρχικοποίηση, getter και βρόχους for-in σε λίστες, σύνολα και επαναλήψιμα· τα var και dynamic θεωρούνται συναγόμενοι τύποι. Κατά την επίλυση κληρονομημένων μελών ακολουθούνται οι όροι extends, implements και with. Ο γράφος καταγράφει επίσης δημιουργία στιγμιοτύπων, αναφορές τύπων, αναγνώσεις και εγγραφές, καθώς και ακμές εξαιρέσεων.
CartRepository.addItem και από ποια γραφικά στοιχεία;» (find_symbol, μετά dependency_search με εισερχόμενη κατεύθυνση)PaymentGateway;» (dependency_search)get_task_context)map, where και forEach, μέθοδοι των Future και Stream όπως then και listen, και οι βιβλιοθήκες dart:. Για αυτά χρησιμοποιήστε το text_pattern_search.structural_search μια τοπική συνάρτηση ή lambda μπορεί να επικαλύπτει την καλέσιμη μονάδα που την περιέχει, και οι getter και setter εμφανίζονται ως υπογραφές μεθόδων.Συνδέστε ένα αποθετήριο με τον γρήγορο οδηγό εκκίνησης και έπειτα δείτε τον πίνακα υποστήριξης στη σελίδα συμβατότητας. Για άλλες βάσεις κώδικα κινητών, διαβάστε τον οδηγό για την Kotlin και τον οδηγό για τη Swift.
Ιδανική χρήση
Ροές εργασίας πρακτόρων
Λεπτομέρειες μηχανής
Χρήσιμα σημεία εισόδου MCP
Χρησιμοποιήστε το για μια κλάση γραφικού στοιχείου, αποθετηρίου ή υπηρεσίας όταν χρειάζεστε τον ορισμό και τις αναφορές.
Χρησιμοποιήστε εισερχόμενη διάσχιση σε μια μέθοδο αποθετηρίου ή διεπαφή για να δείτε καλούντες και υλοποιήσεις πριν αλλάξετε ένα API.
Χρησιμοποιήστε το για προτροπές όπως «ακολούθησε πώς το κουμπί ολοκλήρωσης αγοράς φτάνει στο API πληρωμών».
Σχετικοί οδηγοί
Η Kotlin κρύβει πολλές διασυνδέσεις σε δέκτες και συναρτήσεις λάμδα. Ο γράφος τις φέρνει ξανά στο φως.
Επεκτάσεις
.kt, .kts
Στη Swift, η συμπεριφορά ζει σε πρωτόκολλα και επεκτάσεις. Ένας πράκτορας πρέπει να βλέπει και τα δύο.
Επεκτάσεις
.swift