当我使用 Clang-format 自动格式化时,当需要子句存在时,它总是在大括号之前插入换行符。
这个
constexpr auto size() const noexcept
requires(!Unique) {
return stdr::fold_left(views | stdv::transform(stdr::size), 0, std::plus<int>{});
}
变成这样了
constexpr auto size() const noexcept
requires(!Unique)
{
return stdr::fold_left(views | stdv::transform(stdr::size), 0, std::plus<int>{});
}
如何避免?
我已经尝试过了
RequiresClausePosition: WithPreceding
BraceWrapping:
AfterClass: false
AfterControlStatement: false
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
BeforeCatch: false
BeforeElse: false
IndentBraces: false
BreakBeforeBraces: Custom
但这些不起作用。
RequiresClausePosition: SingleLine
:
RequiresClausePosition: SingleLine
如果可能的话,尝试将所有内容放在同一行。否则正常的换行规则将被接管。
带有
ColumnLimit: 80
的示例:
constexpr auto size() const noexcept requires(!Unique) {
return stdr::fold_left(views | stdv::transform(stdr::size), 0,
std::plus<int>{});
}