如何获取 clang-format 来对齐链式方法调用

And*_*mpi 5 c++ clang-format

我加入了一个现有项目,并且是第一个使用 clang-format 的团队成员。除了一些恼人的差异之外,现有的样式大部分都匹配。这是一个(另一个在这里):

  folly::dynamic makeRequest(const string &response) {
    return folly::dynamic::object()
      ("log_type", "FOO")
      ("src_id", "42")
      ("dst_id", "666")
      ("success", true);
  }
Run Code Online (Sandbox Code Playgroud)

clang-format 坚持将其格式化为这样:

  folly::dynamic makeRequest(const string &token_response) {
    // using longer variable names to highlight using up the whole line lenght
    return folly::dynamic::object()("log_type", "FOO")(
        "src_id", somethingId)("dst_id", whateverId)("success",
                                                     sucess);
  }
Run Code Online (Sandbox Code Playgroud)

在前一种风格中,我对连续行如何缩进没有强烈的感觉,只要我们每行调用一个方法即可。那可能吗?

Fra*_*dor 3

这不是最好的解决方案,但您可以通过在每行后面添加“//”来强制换行:

return folly::dynamic::object() //
  ("log_type", "FOO") //
  ("src_id", "42") //
  ("dst_id", "666") //
  ("success", true);
Run Code Online (Sandbox Code Playgroud)