bytedance / bytedance/sonic-cpp

Proposal: more abstracted SAX handler for lots of JSON manipulates

Open
#63 0 comments 0 reactions 0 assignees View on GitHub
good first issue proposal
Dominant language
C++
Stars
976
Forks
127
PR merge metrics
No merged PRs in 30d

Description

SAX handler is necessary because it consumes less memory and has fast performance. especially based on SIMD skip. Now, sonic-cpp's handler is designed to parse the whole json, and lazysax is limited to only parsing the top level of json. There are many limits:
1. not support load or skip according to the user-defined handler.
2. can not check json type in sax.

We can add SkipOne(raw json), CheckOne(type) and other handler functions, to support lots of JSON manipulates, such as, merge json, cut json, and so on.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.