Sobre o projeto
vibejson é uma biblioteca JSON abrangente para aplicações Go que exigem mais controle do que as operações padrão de marshal/unmarshal. Ela foca na redução de alocações e no fornecimento de regras explícitas de propriedade e empréstimo para operações zero-copy.
As principais capacidades incluem:
- Codecs Tipados: Suporta codificadores e decodificadores compilados para caminhos críticos repetidos para minimizar o overhead.
- Navegação de Documentos: Fornece seleção via JSON Pointer (RFC 6901) através de `GetRaw` e indexação estrutural para navegação repetida de documentos.
- Streaming: Inclui um `Reader` e `Writer` para processar NDJSON ou valores JSON concatenados.
- Validação e Transformações: Oferece ferramentas para validação rigorosa de JSON, bem como funções para compactar, indentar ou canonicalizar a saída JSON.
- Otimização de Performance: Suporta SIMD nativo do Go (via `GOEXPERIMENT=simd` no Go 1.27) para acelerar a varredura de strings, parsing estrutural e conversão de arrays numéricos em arquiteturas amd64 (AVX2) e arm64 (NEON).
- Modelo de Documento: Apresenta um modelo de documento ordenado com propriedade para manipulação dinâmica de JSON.
A biblioteca é projetada sem dependências fora da biblioteca padrão do Go e fornece vários níveis de API, que variam de codecs tipados de alto nível a kernels de varredura de baixo nível em seus pacotes `x/`.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.