# Important: Use the same version of clang-format as our linter, which is: # # $ ./scripts/install_deps.py --only-python # $ ./.venv/bin/clang-format --version # # Warning: If you use a different version, the formatting will be different. # # To install a specific version of clang-format, use pip: # $ pip install clang-format== BasedOnStyle: LLVM # Turn off LLVM default alignment of params with the opening bracket, # which can be less readable in some cases in our code base. # # Using `BlockIndent` will result in: # void fooBarBazQuxHelloWorld( # int a, # int b # ); # # Instead of: # void fooBarBazQuxHelloWorld(int a, # int b); AlignAfterOpenBracket: BlockIndent # Turn off LLVM default packing of ctor initializers. # This makes it easier to see which members were initialized and in what order. PackConstructorInitializers: CurrentLine # up our limit to 120 ColumnLimit: 120 # Custom Breaking rules BreakBeforeBraces: Custom BraceWrapping: AfterCaseLabel: false AfterClass: true AfterControlStatement: Never AfterEnum: true AfterFunction: true AfterNamespace: false AfterStruct: true AfterUnion: true AfterExternBlock: true BeforeCatch: false BeforeElse: false BeforeLambdaBody: false BeforeWhile: false # no single line functions AllowShortFunctionsOnASingleLine: None