Maguyva'da C: sistem ve gömülü kod için çağrı grafları
C'de çağrı grafı mimarinin kendisidir. Bir ajan düzenlemeden önce onu okumalıdır.
Uzantılar
.c, .h
Maguyva, Lua'yı AST, sembol ve graf desteğiyle sunar; böylece yapay zeka ajanları Lua kodunda modülleri, iki nokta metotlarını, metatable sınıflarını ve require zincirlerini izleyebilir.
Lua’da sınıflar için bir anahtar sözcük yoktur. Nesneler tablolardır, metotlar onlarda saklanan fonksiyonlardır, kalıtım ise bir setmetatable çağrısıdır. Modül, require ne döndürürse odur. Yapı gerçektir, ama metin aramasının anlamadığı geleneklerde yaşar.
Maguyva bu gelenekleri yapı olarak okur; böylece ajan bir metodu kimin çağırdığını ya da hangi tabloların bir tabanı genişlettiğini sorup doğrudan yanıt alabilir.
Maguyva .lua dosyalarını kapsar. Fonksiyon bildirimleri, local function tanımları ve fonksiyon ifadeleri çıkarılır; function Account:deposit() gibi iki nokta metotları sahibi olan tabloya, yani Account’a atanır. Metot zincirleri çağrı çağrı izlenir ve self üzerindeki çağrılar kapsayan nesneye bağlı kalır.
Lua gelenekleri şöyle ilişkilere dönüşür:
require, dofile ve loadfile içe aktarmaları kaydeder.setmetatable çağrısı kalıtımı kaydeder.ClassName:new(), ClassName.new() ve setmetatable({...}, ClassName) örnekleme sayılır.error() bir fırlatma, pcall ve xpcall ise bir yakalama kaydeder.Graf ayrıca okuma ve yazmaları ve kontrol akışını kaydeder.
Inventory:addItem’i kim çağırıyor ve hangi betiklerden?” (find_symbol, ardından dependency_search incoming)util.http’yi require ile yüklüyor?” (dependency_search)get_task_context)string, table, math, io, os, coroutine, debug ve utf8) ile Neovim’in vim.* ve OpenResty’nin ngx.* API’leri. Bu API’lere yapılan çağrılar graf kenarı değildir; bulmak için text_pattern_search kullanın.structural_search içindeki classes ve imports hazır ayarları Lua için hiçbir şey seçmez. Bunun yerine find_symbol veya 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. Lua’yı yerel koda gömen motorlar için C rehberini de okuyun.
En uygun kullanım
Ajan iş akışları
Motor ayrıntıları
Yararlı MCP giriş noktaları
Tanıma ve çağıranlara ihtiyaç duyduğunuzda bir modül fonksiyonu veya iki nokta metodu için kullanın.
Paylaşılan bir modülü taşımadan önce onu require ile yükleyen dosyaları görmek için incoming geçişi kullanın.
Graftan filtrelenen `vim.*`, `ngx.*` veya standart kütüphane çağrıları için kullanın.
İlgili rehberler
C'de çağrı grafı mimarinin kendisidir. Bir ajan düzenlemeden önce onu okumalıdır.
Uzantılar
.c, .h
Python kod tabanları servisler, betikler, tip taslakları ve operasyonel bağlantı kodu genelinde yayıldığında yararlıdır.
Uzantılar
.py, .pyi, .pyw