इस प्रोजेक्ट के बारे में
nlohmann/json (JSON for Modern C++) एक हेडर-ओनली C++ लाइब्रेरी है जो C++11 और उसके बाद के संस्करणों के लिए JSON समर्थन प्रदान करती है। इसका पूरा कार्यान्वयन एक ही फ़ाइल (single_include/nlohmann/json.hpp) में समाहित है, इसे किसी बाहरी निर्भरता या जटिल बिल्ड सेटअप की आवश्यकता नहीं होती, और इसे कई पैकेज मैनेजरों के माध्यम से वितरित किया जाता है। इसे इस तरह डिज़ाइन किया गया है कि C++ में JSON एक प्रथम-श्रेणी के डेटा टाइप जैसा महसूस हो, जिसमें ऑपरेटर ओवरलोडिंग और इनिशियलाइज़र लिस्ट का उपयोग करके सहज ऑब्जेक्ट और ऐरे निर्माण संभव होता है।
लाइब्रेरी में स्ट्रिंग्स, स्ट्रीम्स और इटरेटर रेंज से/तक पार्सिंग और सीरियलाइज़ेशन; एलिमेंट्स तक STL-जैसी पहुँच; और JSON मानों तथा मानक C++ प्रकारों के बीच कन्वर्ज़न शामिल है, जिसमें स्पेशलाइज़ेशन के माध्यम से मनमाने उपयोगकर्ता-परिभाषित प्रकार भी शामिल हैं। यह दस्तावेज़ों को क्वेरी और संशोधित करने के लिए JSON Pointer, JSON Patch और JSON Merge Patch को लागू करती है, और कई बाइनरी सीरियलाइज़ेशन फ़ॉर्मैट का समर्थन करती है: BSON, CBOR, MessagePack, UBJSON और BJData। इवेंट-ड्रिवन उपयोग के लिए SAX-शैली का पार्सिंग इंटरफ़ेस भी उपलब्ध है।
README के अनुसार, यह प्रोजेक्ट गहन परीक्षण पर ज़ोर देता है: 100% यूनिट टेस्ट कवरेज, Valgrind और Clang sanitizers के साथ मेमोरी जाँच, और Google OSS-Fuzz के माध्यम से निरंतर फ़ज़ टेस्टिंग। दस्तावेज़ीकरण, FAQ, API संदर्भ और उदाहरण json.nlohmann.me पर होस्ट किए गए हैं। इंटीग्रेशन विकल्पों में CMake, पैकेज मैनेजर और pkg-config शामिल हैं। लाइब्रेरी केवल UTF-8 का समर्थन करती है; अन्य एन्कोडिंग के लिए डंपिंग के दौरान एरर-हैंडलर कॉन्फ़िगरेशन की आवश्यकता होती है।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.