Sobre el proyecto
vibejson es una biblioteca de JSON exhaustiva para aplicaciones Go que requieren más control que las operaciones estándar de marshal/unmarshal. Se centra en reducir las asignaciones y proporcionar reglas explícitas de propiedad y préstamo para operaciones zero-copy.
Las capacidades clave incluyen:
- Codecs Tipados: Soporta codificadores y decodificadores compilados para rutas críticas repetitivas con el fin de minimizar la sobrecarga.
- Navegación de Documentos: Proporciona selección de JSON Pointer (RFC 6901) a través de `GetRaw` e indexación estructural para la navegación repetida de documentos.
- Streaming: Incluye un `Reader` y un `Writer` para procesar NDJSON o valores JSON concatenados.
- Validación y Transformaciones: Ofrece herramientas para la validación estricta de JSON, así como funciones para compactar, sangrar o canonicalizar la salida de JSON.
- Optimización de Rendimiento: Soporta SIMD nativo de Go (vía `GOEXPERIMENT=simd` en Go 1.27) para acelerar el escaneo de cadenas, el análisis estructural y la conversión de arreglos numéricos en arquitecturas amd64 (AVX2) y arm64 (NEON).
- Modelo de Documento: Cuenta con un modelo de documento ordenado y propietario para la manipulación dinámica de JSON.
La biblioteca está diseñada sin dependencias fuera de la biblioteca estándar de Go y proporciona varios niveles de API que van desde codecs tipados de alto nivel hasta núcleos de escaneo de bajo nivel en sus paquetes `x/`.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.