binary-parser - İkili verileri yüksek performansla ayrıştırmak için JavaScript parser oluşturucu
(github.com/keichi)- Yapılandırılmış ikili formatları bildirimsel zincir API ile tanımlamak için tasarlanmıştır; böylece elle parser yazmanın karmaşıklığını büyük ölçüde azaltır
- Parser tanımına dayanarak çalışma zamanında ayrıştırma kodunu dinamik olarak üretip derler; bu da elle yazılmış uygulamalara yakın çalışma performansı sağlar
- Tamsayı, kayan nokta, bit alanı, string, dizi, choice, pointer gibi ikili protokoller için gereken temel tipleri geniş kapsamda destekler (kullanıcı tanımlı tipler de mümkündür)
- Endianness, bit düzeyinde alanlar, değişken uzunluklu diziler gibi ağ ve dosya formatı ayrıştırmada sık görülen kalıplar doğrudan ifade edilebilir
choicevearraybirleşimiyle TLV(Type-Length-Value) yapıları doğal biçimde modellenebilirpointer,seek,saveOffsetgibi özelliklerle ELF gibi ofset tabanlı formatların ayrıştırılması desteklenir- Named parser (
namely) ile özyinelemeli yapı ağaçlarının ayrıştırılması mümkündür- Ancak sonsuz özyinelemeyi önlemek için bir sonlanma koşulu gereklidir
- Hem CommonJS hem de ESM desteklenir ve Node.js ortamında Buffer / Uint8Array tabanlı ayrıştırma için optimize edilmiştir
- İkili dosya analizi, ağ paketi ayrıştırma, özel ikili formatların işlenmesi gibi düşük seviyeli veri yorumlama işleri için uygun bir kütüphanedir
Henüz yorum yok.