jit.attach

  jit.attach( function callback, string event )

Açıklama

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir.

Bu fonksiyon güvenlik endişeleri nedeniyle devre dışı bırakılmıştır.

jit.attach ile bir dizi derleyici olayına geri arama (callback) fonksiyonları ekleyebilirsiniz. Geri arama şu durumlarda çağrılabilir:

  • bir fonksiyon bytecode'a derlendiğinde ("bc");
  • iz (trace) kaydı başladığında veya durduğunda ("trace");
  • bir iz kaydedilirken ("record");
  • veya bir iz, bir yan çıkış (side exit) aracılığıyla çıktığında ("texit").

jit.attach(callback, "event") ile bir geri arama ayarlayın ve aynı geri aramayı jit.attach(callback) ile temizleyin. Her olay için yalnızca bir geri arama aktif olabilir.

Bu fonksiyon LuaJIT wikisinde resmi olarak belgelenmemiştir, riski size ait olmak üzere kullanın.

Argümanlar

1 function callback
Geri arama (callback) fonksiyonu.

Geri aramaya iletilen argümanlar, raporlanan olaya bağlıdır:

  • "bc":
    • function func - Az önce kaydedilen fonksiyon
  • "trace":
    • string what - iz (trace) olayının açıklaması: "flush", "start", "stop", "abort". Tüm olaylar için mevcuttur.
    • number tr - İz numarası. "flush" için mevcut değildir.
    • function func - İzlenen fonksiyon. "start" ve "abort" için mevcuttur.
    • number pc - Program sayacı - kaydedilen fonksiyonun bytecode numarası (eğer bu bir Lua fonksiyonuysa). "start" ve "abort" için mevcuttur.
    • number otr - start: eğer bu bir yan iz (side trace) ise ebeveyn iz numarası, abort: iptal kodu
    • string oex - start: ebeveyn iz için çıkış numarası, abort: iptal nedeni (string)
  • "record":
    • number tr - İz numarası. "flush" için mevcut değildir.
    • function func - İzlenen fonksiyon. "start" ve "abort" için mevcuttur.
    • number pc - Program sayacı - kaydedilen fonksiyonun bytecode numarası (eğer bu bir Lua fonksiyonuysa). "start" ve "abort" için mevcuttur.
    • number depth - Mevcut bytecode'un iç-satır (inlining) derinliği.
  • "texit":
    • number tr - İz numarası. "flush" için mevcut değildir.
    • number ex - Çıkış numarası
    • number ngpr - Çıkışta aktif olan genel amaçlı ve kayan noktalı (floating point) yazmaçların (register) sayısı.
    • number nfpr - Çıkışta aktif olan genel amaçlı ve kayan noktalı (floating point) yazmaçların (register) sayısı.
2 string event
Müdahale edilecek (hook) olay.

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord