Async reader for JSON Lines (newline-delimited JSON) streams.
Dependencies
///|
test "parse buffered JSON Lines" {
let values = @jsonl.parse(
(
#|{"event": "agent_step", "step": 1}
#|{"event": "agent_finished", "answer": "DONE"}
),
)
assert_eq(values.length(), 2)
assert_true(values[1] == { "event": "agent_finished", "answer": "DONE" })
}///|
async test "stream JSON Lines from a pipe" {
@async.with_task_group(group => {
let (rd, wr) = @io.pipe()
group.spawn_bg(() => {
wr.write("{\"n\": 1}\n{\"n\": 2}\n")
wr.close()
})
let values = @jsonl.read_all(rd)
assert_eq(values.length(), 2)
})
}Async reader for JSON Lines (newline-delimited JSON) streams.
Dependencies