Skip to content

Commit 4854e19

Browse files
committed
Use serde_json::to_writer for JsonEmitter::emit
Avoids an unnecessary intermediate string.
1 parent c070a83 commit 4854e19

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

compiler/rustc_errors/src/json.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -141,11 +141,11 @@ impl JsonEmitter {
141141

142142
fn emit(&mut self, val: EmitTyped<'_>) -> io::Result<()> {
143143
if self.pretty {
144-
writeln!(self.dst, "{}", serde_json::to_string_pretty(&val).unwrap())
144+
serde_json::to_writer_pretty(&mut *self.dst, &val)?
145145
} else {
146-
writeln!(self.dst, "{}", serde_json::to_string(&val).unwrap())
147-
}
148-
.and_then(|_| self.dst.flush())
146+
serde_json::to_writer(&mut *self.dst, &val)?
147+
};
148+
self.dst.flush()
149149
}
150150
}
151151

0 commit comments

Comments
 (0)