* Make SourceData c11
* make it compile
* add a marco
* follow up rename of c11_vetor__push
* remove isascii marco
* fix empty function name handling
* change enum back
* Remove trival accessor
* make pkpy_Str__take_buf hidden
* make it compile
* remove rcptr and use shared_ptr instead
* change enum name in C++ code back
* fix type problem
* remove strdup polyfill
* remove xmake
* ...
* Add cjson module
* Create structure for cjson module
* Implemenet loads function
* Convert cJsonBool to python boolean
* Implement dumps function
* Convert json bool and null to python Bool and None
* necessary changes of project structure
* Update amalgamate.py
* Support non-dictionary json objects (list, tuple, string, number, bool, null)
* Fix tests
* fix CI
* fix CI
* Convert python to cJson and then to string
* Delete cJSON object after use
---------
Co-authored-by: Mahbub Alam <alam.mahbub214@gmail.com>
Co-authored-by: blueloveTH <blueloveth@foxmail.com>
Number::stoi may raise std::out_of_range but it cannot be caught via catch(std::exception&). We use catch(...) for now. Note that catch(...) may catch pkpy::Exception or any others.