mre/hyperjson

Zero-copy string deserialization

Ouverte

#67 ouverte le 21 sept. 2019

 (1 commentaire) (0 réaction) (0 personne assignée)Python (41 forks)github user discovery
enhancementgood first issuehacktoberfesthelp wanted

Métriques du dépôt

Stars
 (511 étoiles)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

Over on Reddit, @mikeyhew mentioned that there might be an option to parse JSON strings without copying:

Just wanted to point out that serde-json isn't zero-copy because it will copy strings to turn escape sequences like "\n" and "" into the character they represent. To parse JSON without copying, you could make a custom string type, JsonStr, which is utf-8 like str but can contain escape sequences.

I forgot about that, but it's actually a great idea! Here's the upstream discussion on serde-json. We should give this custom string type some serious consideration, as string allocation takes a big part of the encoding/decoding process at the moment.

If anyone wants to give it a shot, go for it.

Guide contributeur