Open abourget opened 5 years ago
What I'm currently doing:
enc.AddArrayKey("rows", gojay.EncodeArrayFunc(func(enc *gojay.Encoder) {
lastIdx := len(r.Rows) - 1
for idx, row := range r.Rows {
enc.EncodeObject(row) // this flushes objects in between..
if idx != lastIdx {
enc.AppendByte(',')
}
}
}))
which seems to work :)
Hi and thanks for the lib.
My goal is to start pushing JSON to an
io.Writer
while it's being JIT encoded. I noticed thatEncodeObject
callsenc.Write()
and manages the error, thatMarshalJSONObject
doesn't return an error and that when callingenc.Write()
myself (from within a MarshalJSONObject() func), there's no place to bubble up the error.Surely I'm doing something a bit off here.. but I simply want to flush the
buf
between rows (say I have 200,000 such rows, which are objects). I also wonder how thebuf
would handle thegetPreviousRune
if I were toWrite()
before my Array is closed.any tips would help, thanks a lot!