منصوبے کے بارے میں

RustyCSV ایک خصوصی CSV تجزیہ اور انکوڈنگ لائبریری ہے جو Elixir کے لیے بنائی گئی ہے، جو کارکردگی کو زیادہ سے زیادہ کرنے کے لیے Rust NIF کے طور پر لاگو کی گئی ہے۔ یہ NimbleCSV کا براہ راست متبادل ہے، جو API مطابقت کو برقرار رکھتے ہوئے جدید خصوصیات جیسے SIMD تیز رفتاری، متوازی تجزیہ، اور محدود-میموری اسٹریم متعارف کرواتا ہے۔ لائبریری موجودہ Rust CSV کریٹس کو لپیٹنا سے گریز کرتی ہے، بلکہ اس کے بجائے Erlang اصطلاحات میں مؤثر طریقے سے تجزیہ کرنے کے لیے BEAM VM کے ساتھ براہ راست مربوط ہوتی ہے، جس سے الاٹیشن اوورہیڈ اور شیڈولر بوجھ کم ہوتا ہے۔ اہم خصوصیات میں تین تجزیہ حکمت عملی شامل ہیں: SIMD (ڈیفالٹ، زیادہ تر فائلوں کے لیے تیز ترین)، متوازی (بڑی یا کوٹ-بھاری فائلوں کے لیے)، اور اسٹریم (لامحدود ڈیٹا کے لیے محدود میموری کے ساتھ)۔ RustyCSV متعدد انکوڈنگز (UTF-8، UTF-16، Latin-1، UTF-32)، ملٹی-سیپریٹر کنفیگریشنز، اور ہیڈرز-تو-میپس تبدیلی کی حمایت کرتا ہے۔ یہ مکمل طور پر RFC 4180 کے مطابق ہے اور وسیع پیمانے پر ٹیسٹ سویٹس کے خلاف تصدیق شدہ ہے۔ لائبریری NIF-تیز رفتاری والی انکوڈنگ بھی پیش کرتی ہے، جو اعلیٰ تھروپٹ متوازی ایکسپورٹ کے لیے موزوں ہے، اور ملٹی-تھریڈڈ منظرناموں میں میموری مینجمنٹ کو بہتر بنانے کے لیے اختیاری mimalloc کی حمایت شامل ہے۔