serde-shape: Rust Serde veri modelini serileştirmeden yansıtır
serde-shape, Rust'ta Serde'nin veri modelini serileştirmeden inceleyen yeni bir reflection kütüphanesi; config dokümantasyonu ve şema denetimi için kullanılabilir.
serde-shape, bir Rust tipinin Serde ile serileştirme sırasında ürettiği veya deserileştirme sırasında kabul ettiği veri modelini, gerçek serileştirme/deserileştirme işlemi yapmadan incelenebilir bir grafiğe dönüştüren yeni bir kütüphane. Tip bilgisi ve #[serde(...)] öznitelikleri üzerinden çalışarak alan adlarını, enum etiketlemesini, varsayılan değerleri, takma adları, atlanan alanları ve özel serializer/deserializer sınırlarını ortaya çıkarıyor.
Kütüphane, SerializeShape ve DeserializeShape olmak üzere yöne özgü iki ayrı türetme makrosu sunuyor; bunlar Serde'nin Serialize/Deserialize türetmelerinden bağımsız çalışıyor ve çalışma zamanı davranışını değiştirmiyor. Bu ayrım, bir tipin serileştirilen ve kabul edilen temsillerinin farklı olabildiği durumlarda geliştiricilere esneklik sağlıyor.
Araç, konfigürasyon referans dokümantasyonu üretme, ortam değişkeni adlarını iç içe config yapılarından türetme, API veya dosya formatı şemalarını elle yazmadan belgeleme ve sürümler arasında serileştirme şeklindeki değişiklikleri denetleme gibi kullanım senaryolarını hedefliyor. Bilinçli olarak bir doğrulama şeması değil; değer aralıkları veya iş kuralları gibi çalışma zamanı davranışlarını çıkarsamıyor, bu işi schemars gibi araçlara bırakıyor.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz