xref: /aosp_15_r20/external/grpc-grpc/include/grpcpp/support/.clang-format (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1---
2Language: Cpp
3BasedOnStyle: Google
4DerivePointerAlignment: false
5PointerAlignment: Left
6IncludeBlocks: Regroup
7IncludeCategories:
8  # port_platform.h is before almost everything
9  - Regex: '^<grpc/(support|impl/codegen)/port_platform.h>'
10    Priority: -100
11  # ruby.h is even more first if it's included
12  - Regex: '^<ruby/ruby.h>'
13    Priority: -200
14  # Some platforms (namely msys) need wchar to be included BEFORE
15  # anything else, especially strsafe.h.
16  - Regex: '^<wchar.h>'
17    Priority: 5
18  # use priority 100+ for grpc headers so they sort last
19  # 'system' headers - include things that have " in the names to make them
20  # stand out and get fixed
21  - Regex: '^(<|")grpc'
22    Priority: 100
23  # similary using include/ to get system headers should stand out and get
24  # fixed
25  - Regex: '^"include/'
26    Priority: 100
27  # source headers go last
28  - Regex: '^"(src|test)/'
29    Priority: 101
30  # not-grpc headers follow
31  # first, non system headers that are included like <> - these are all
32  # local carveouts, and get sorted below c++ but before non grpc "" files
33  - Regex: '^<(openssl/|uv\.h|ares\.h|address_sorting/|gmock/|gtest/|zlib|zconf|benchmark/|google/)'
34    Priority: 30
35  # first C system headers - they have a . in the filename
36  - Regex: '^<.*\.'
37    Priority: 10
38  # then C++ system headers - no ., the only thing that will match now
39  - Regex: '^<'
40    Priority: 20
41  # finally other "" includes go between system headers and our headers
42  - Regex: '^"'
43    Priority: 40
44---
45Language: ObjC
46BasedOnStyle: Google
47ColumnLimit: 100
48ObjCBlockIndentWidth: 2
49---
50Language: Proto
51BasedOnStyle: Google
52ColumnLimit: 100
53...
54