C στο Maguyva: γράφοι κλήσεων για κώδικα συστημάτων και ενσωματωμένων
Στη C, ο γράφος κλήσεων είναι η αρχιτεκτονική. Ένας πράκτορας πρέπει να τον διαβάσει πριν επεξεργαστεί.
Επεκτάσεις
.c, .h
Το Maguyva υποστηρίζει Fortran με AST, σύμβολα και γράφο, ώστε οι πράκτορες AI να παρακολουθούν υπορουτίνες, αρθρώματα και παραγόμενους τύπους πριν αλλάξουν αριθμητικό κώδικα.
Οι βάσεις κώδικα σε Fortran είναι συνήθως παλιές, μεγάλες και γραμμένες από ειδικούς του πεδίου και όχι από ομάδες λογισμικού. Οι ρουτίνες με ονόματα SOLVE, Solve και solve είναι η ίδια ρουτίνα. Τα αρθρώματα μοιράζονται σε εκατοντάδες αρχεία και η βιβλιοθήκη των ενσωματωμένων διαδικασιών είναι τόσο μεγάλη, ώστε μια αφελής λίστα κλήσεων αποτελείται κυρίως από SQRT, SUM και WRITE.
Ένας πράκτορας που κάνει μόνο grep πνίγεται σε αυτόν τον θόρυβο. Το Maguyva του δίνει πρώτα τη δομή: ποιες μονάδες προγράμματος υπάρχουν, ποια αρθρώματα χρησιμοποιούν και ποιες ρουτίνες του κώδικά σας καλούν η μία την άλλη.
Το Maguyva καλύπτει πηγαίο κώδικα σταθερής και ελεύθερης μορφής (.f, .for, .ftn, .f90, .f95, .f03, .f08). Οι συναρτήσεις και οι υπορουτίνες εξάγονται ως καλέσιμα σύμβολα και οι παραγόμενοι τύποι μπορούν να επιλεγούν ως ορισμοί τύπων στη δομική αναζήτηση.
Η αντιστοίχιση συμβόλων δεν κάνει διάκριση πεζών-κεφαλαίων, όπως και η ίδια η Fortran. Οι σχέσεις εισαγωγής προκύπτουν από τα use και include· η λέξη-κλειδί αφαιρείται ώστε ο γράφος να αποθηκεύει το όνομα του αρθρώματος. Κλήσεις, αναγνώσεις, αναθέσεις, αναφορές τύπων και κληρονομικότητα από επεκταμένους παραγόμενους τύπους περιλαμβάνονται επίσης στον γράφο.
Το φίλτρο σχέσεων αφαιρεί περίπου 165 ενσωματωμένες διαδικασίες (εντολές I/O και ρουτίνες μαθηματικών, πινάκων, συμβολοσειρών, μετατροπής τύπων και χειρισμού δυαδικών ψηφίων), ώστε οι ακμές που απομένουν να δείχνουν στον δικό σας κώδικα.
compute_flux και ποια αρθρώματα χρησιμοποιούν;» (find_symbol, μετά dependency_search incoming)get_task_context)constants.» (text_pattern_search για use constants, μετά find_symbol)functions στο structural_search· η προεπιλογή methods δεν επιλέγει κόμβους Fortran.text_pattern_search όταν χρειάζεστε κάθε WRITE ή OPEN.Συνδέστε ένα αποθετήριο με τον γρήγορο οδηγό εκκίνησης και έπειτα δείτε τον πλήρη πίνακα υποστήριξης στη σελίδα συμβατότητας. Αν η Fortran σας συνυπάρχει με κώδικα σύνδεσης σε C, διαβάστε και τον οδηγό για τη C.
Ιδανική χρήση
Ροές εργασίας πρακτόρων
Λεπτομέρειες μηχανής
Χρήσιμα σημεία εισόδου MCP
Ξεκινήστε από το όνομα της υπορουτίνας, της συνάρτησης ή του αρθρώματος· η αντιστοίχιση αγνοεί τα πεζά-κεφαλαία, όπως και η Fortran.
Χρησιμοποιήστε διάσχιση incoming σε μια ρουτίνα του επιλυτή ή κοινού αρθρώματος για να δείτε όλους τους καλούντες πριν από μια αριθμητική αλλαγή.
Χρησιμοποιήστε το για προτροπές όπως «εντόπισε πώς εφαρμόζονται οι οριακές συνθήκες στον βρόχο του επιλυτή».
Σχετικοί οδηγοί
Στη C, ο γράφος κλήσεων είναι η αρχιτεκτονική. Ένας πράκτορας πρέπει να τον διαβάσει πριν επεξεργαστεί.
Επεκτάσεις
.c, .h
Εδώ είναι το σημείο όπου η ευρεία υποστήριξη γλωσσών παύει να είναι απλώς ένα στατιστικό και γίνεται εργαλείο εκσυγχρονισμού.
Επεκτάσεις
.cbl, .cob, .cpy