this changes the json parser from a callback mess to a simple iterator.
it is also also extremly faster
only use memcpy for special cases (escaped strings)
use an SSE2 skipmask
the downside is that the entire json text needs to be available before
parsing. chunking is no longer supported. There wasn't really a use case
for it , as you end up allocating the same amount of memory anyway for
copies anyway.
this changes the json parser from a callback mess to a simple iterator.
it is also also extremly faster
the downside is that the entire json text needs to be available before parsing. chunking is no longer supported. There wasn't really a use case for it , as you end up allocating the same amount of memory anyway for copies anyway.