Skip to main content

write_json_line

Function write_json_line 

Source
pub fn write_json_line<W: Write, T: Serialize>(w: W, value: &T) -> Result<()>
Expand description

Serializes value as compact JSON + trailing LF on the given writer.

DI primitive (G-IO-11): pass a Cursor/Vec in tests; production uses process stdout/stderr via print_json_line / print_json_line_stderr.

§Examples

use ssh_cli::json_wire::write_json_line;
use serde_json::json;
use std::io::Cursor;

let mut buf = Cursor::new(Vec::new());
write_json_line(&mut buf, &json!({"ok": true})).unwrap();
let s = String::from_utf8(buf.into_inner()).unwrap();
assert_eq!(s, "{\"ok\":true}\n");
assert!(!s.contains('\r'));

§Errors

Serialization failure or I/O (including BrokenPipe).