Maguyva'da C++: büyük kod tabanları için sınıf ve çağrı grafları
C++ bir çağrının gerçek hedefini ad alanlarının, aşırı yüklemelerin ve sanal gönderimin arkasına gizler. Graf, ajanın onu bulmasına yardım eder.
Uzantılar
.c, .c++, .cc, .cpp, +6 daha
Maguyva, Swift'i AST, sembol ve graf desteğiyle sunar; böylece yapay zeka ajanları iOS ve macOS kodunda protokolleri, uzantıları, başlatıcıları ve gözlemcileri izleyebilir.
Swift bir türü birçok yere yayar. Bir struct bir dosyada bildirilir, üç başka dosyadaki uzantılardan davranış kazanır ve bir pakette tanımlanmış protokollere uyar. Durum değişiklikleri hesaplanan özelliklerde ve willSet / didSet gözlemcilerinde gizlenir. Her seferinde tek dosya okuyan bir ajan bunların çoğunu kaçırır.
Maguyva bu yapıyı dizinler; böylece ajan bir türün üyelerini, uyumlarını ve onu çağıranları birlikte görür.
Maguyva .swift dosyalarını kapsar. Çağrılabilir semboller fonksiyonları, init ve deinit bloklarını, subscript’leri, hesaplanan özelliklerin getter ve setter’larını ve willSet / didSet gözlemcilerini içerir; böylece durumu değiştiren kod özellik gövdelerinde kaybolmak yerine sembol olarak aranabilir.
Struct, enum, protokol ve uzantılarda bildirilen üyeler sahip türleriyle nitelenir (örneğin CartStore.add); bir uzantıda eklenen üyeler genişletilen türe atfedilir. Generic parametreler, protokol uyum listeleri ve ? / ! sonekleri tanım adlarından kaldırılır, böylece aramalar yalın adı kullanır. Çağrılar self. ve sınıf niteleyicisini korur; sondaki kapanışlar çağrının argüman sayısına dahil edilir.
Graf çağrıları, protokol uyumunu, kalıtımı, geçersiz kılmaları, örneklemeyi, öznitelikleri, tür referanslarını, okuma ve yazmaları ve throw kenarlarını kaydeder.
PaymentProvider protokolüne uyuyor ve her biri nerede oluşturuluyor?” (dependency_search)CartStore.add yöntemini kim, hangi görünümlerden çağırıyor?” (find_symbol, ardından gelen yönde dependency_search)get_task_context).swift kaynak kodu eşlenir. Storyboard ve XIB dosyaları uzantı listesinde yer almaz; bu nedenle Interface Builder bağlantıları grafın dışında kalır.print, debugPrint, NSLog ve doğrulamalar gibi standart kütüphane ve Foundation çağrıları ilişkilerden filtrelenir; bu nedenle graf kenarı değildir. Bunlar için text_pattern_search kullanın.Hızlı başlangıç ile bir repo bağlayın, ardından destek matrisi için uyumluluk sayfasına bakın. Aynı ürünü Android’de de sunuyorsanız Kotlin rehberini okuyun.
En uygun kullanım
Ajan iş akışları
Motor ayrıntıları
Yararlı MCP giriş noktaları
Tanıma ve referanslara ihtiyacınız olduğunda bir tür, protokol veya yöntem adıyla kullanın.
Uyan türleri bulmak için bir protokolde, çağıranları bulmak için bir yöntemde gelen yönde kullanın.
"Bir anlık bildirimin gelen kutusu ekranına nasıl ulaştığını açıkla" gibi istemler için kullanın.
İlgili rehberler
C++ bir çağrının gerçek hedefini ad alanlarının, aşırı yüklemelerin ve sanal gönderimin arkasına gizler. Graf, ajanın onu bulmasına yardım eder.
Uzantılar
.c, .c++, .cc, .cpp, +6 daha
Kotlin birçok bağlantıyı alıcıların ve lambda'ların içine gizler. Graf onları yeniden görünür kılar.
Uzantılar
.kt, .kts