HomePhabricator

[YAMLIO] Remove trailing spaces when outputting maps

Description

[YAMLIO] Remove trailing spaces when outputting maps

llvm::yaml::Output::paddedKey unconditionally outputs spaces, which
are superfluous if the value to be dumped is a sequence or map.
Change bool NeedsNewLine to StringRef Padding so that it can be
overridden to \n if the value is a sequence or map.

An empty map/sequence is special. It is printed as {} or [] without
a newline, while a non-empty map/sequence follows a newline. To handle
this distinction, add another variable PaddingBeforeContainer and does
the special handling in endMapping/endSequence.

Reviewed By: grimar, jhenderson

Differential Revision: https://reviews.llvm.org/D64566

Details

Committed
MaskRayJul 11 2019, 9:51 PM
Reviewer
grimar
Differential Revision
D64566: [YAMLIO] Remove trailing spaces when outputting maps
Parents
rL365868: [windows] re-call signal in sigint_handler for Windows
Branches
Unknown
Tags
Unknown