Skip to content

Commit 70395cd

Browse files
gevtushenkomiscco
andauthored
Introduce CCCL clang-format (#551)
Co-authored-by: Michael Schellenberger Costa <[email protected]>
1 parent 680c012 commit 70395cd

File tree

4 files changed

+179
-176
lines changed

4 files changed

+179
-176
lines changed

.clang-format

+176
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
# Note that we don't specify the language in this file because some files are
2+
# detected as Cpp, but others are detected as ObjC and we want this formatting
3+
# to apply to all types of files.
4+
BasedOnStyle: LLVM
5+
AccessModifierOffset: -2
6+
AlignAfterOpenBracket: Align
7+
AlignConsecutiveAssignments: Consecutive
8+
AlignConsecutiveBitFields: Consecutive
9+
AlignConsecutiveMacros: Consecutive
10+
AlignEscapedNewlines: Left
11+
AlignOperands: AlignAfterOperator
12+
AllowAllArgumentsOnNextLine: true
13+
AlignTrailingComments:
14+
Kind: Never
15+
AllowAllParametersOfDeclarationOnNextLine: true
16+
AllowAllConstructorInitializersOnNextLine: true
17+
AllowShortBlocksOnASingleLine: false
18+
AllowShortCaseLabelsOnASingleLine: false
19+
AllowShortFunctionsOnASingleLine: Empty
20+
AllowShortIfStatementsOnASingleLine: Never
21+
AllowShortLambdasOnASingleLine: Empty
22+
AllowShortLoopsOnASingleLine: false
23+
AlwaysBreakAfterReturnType: None
24+
AlwaysBreakTemplateDeclarations: Yes
25+
AttributeMacros: [
26+
'CUB_RUNTIME_FUNCTION',
27+
'CUB_DETAIL_KERNEL_ATTRIBUTES',
28+
'THRUST_RUNTIME_FUNCTION',
29+
'THRUST_DETAIL_KERNEL_ATTRIBUTES',
30+
'_ALIGNAS_TYPE',
31+
'_ALIGNAS',
32+
'_LIBCUDACXX_ALIGNOF',
33+
'_LIBCUDACXX_ALWAYS_INLINE',
34+
'_LIBCUDACXX_CONSTEXPR_AFTER_CXX11',
35+
'_LIBCUDACXX_CONSTEXPR_AFTER_CXX14',
36+
'_LIBCUDACXX_CONSTEXPR_AFTER_CXX20',
37+
'_LIBCUDACXX_CONSTEXPR_AFTER_CXX23',
38+
'_LIBCUDACXX_CONSTEXPR',
39+
'_LIBCUDACXX_CONSTINIT',
40+
'_LIBCUDACXX_DEPRECATED_IN_CXX11',
41+
'_LIBCUDACXX_DEPRECATED_IN_CXX14',
42+
'_LIBCUDACXX_DEPRECATED_IN_CXX17',
43+
'_LIBCUDACXX_DEPRECATED_IN_CXX20',
44+
'_LIBCUDACXX_DEPRECATED',
45+
'_LIBCUDACXX_DISABLE_EXTENTSION_WARNING',
46+
'_LIBCUDACXX_EXCLUDE_FROM_EXPLICIT_INSTANTIATION',
47+
'_LIBCUDACXX_EXPORTED_FROM_ABI',
48+
'_LIBCUDACXX_EXTERN_TEMPLATE_TYPE_VIS',
49+
'_LIBCUDACXX_FALLTHROUGH',
50+
'_LIBCUDACXX_HIDDEN',
51+
'_LIBCUDACXX_HIDE_FROM_ABI_AFTER_V1',
52+
'_LIBCUDACXX_HIDE_FROM_ABI',
53+
'_LIBCUDACXX_INLINE_VISIBILITY',
54+
'_LIBCUDACXX_INTERNAL_LINKAGE',
55+
'_LIBCUDACXX_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS',
56+
'_LIBCUDACXX_NO_DESTROY',
57+
'_LIBCUDACXX_NO_SANITIZE',
58+
'_LIBCUDACXX_NO_UNIQUE_ADDRESS',
59+
'_LIBCUDACXX_NOALIAS',
60+
'_LIBCUDACXX_NODISCARD_EXT',
61+
'_LIBCUDACXX_NODISCARD',
62+
'_LIBCUDACXX_NORETURN',
63+
'_LIBCUDACXX_OVERRIDABLE_FUNC_VIS',
64+
'_LIBCUDACXX_STANDALONE_DEBUG',
65+
'_LIBCUDACXX_TEMPLATE_DATA_VIS',
66+
'_LIBCUDACXX_TEMPLATE_VIS',
67+
'_LIBCUDACXX_THREAD_SAFETY_ANNOTATION',
68+
'_LIBCUDACXX_USING_IF_EXISTS',
69+
'_LIBCUDACXX_WEAK',
70+
]
71+
BinPackArguments: false
72+
BinPackParameters: false
73+
BreakBeforeBraces: Custom
74+
BraceWrapping:
75+
AfterCaseLabel: false
76+
AfterClass: true
77+
AfterControlStatement: true
78+
AfterEnum: true
79+
AfterFunction: true
80+
AfterNamespace: true
81+
AfterStruct: true
82+
AfterUnion: true
83+
BeforeCatch: true
84+
BeforeElse: true
85+
IndentBraces: false
86+
SplitEmptyFunction: false
87+
SplitEmptyRecord: false
88+
BreakBeforeConceptDeclarations: true
89+
BreakBeforeBinaryOperators: NonAssignment
90+
BreakBeforeTernaryOperators: true
91+
BreakConstructorInitializers: BeforeComma
92+
BreakInheritanceList: BeforeComma
93+
ColumnLimit: 120
94+
CompactNamespaces: false
95+
ContinuationIndentWidth: 2
96+
EmptyLineAfterAccessModifier: Never
97+
EmptyLineBeforeAccessModifier: Always
98+
FixNamespaceComments: true
99+
IndentWrappedFunctionNames: false
100+
IncludeBlocks: Regroup
101+
IncludeCategories:
102+
- Regex: '^<cub'
103+
Priority: 1
104+
SortPriority: 0
105+
- Regex: '^<thrust'
106+
Priority: 2
107+
SortPriority: 1
108+
- Regex: '^<cuda'
109+
Priority: 3
110+
SortPriority: 2
111+
- Regex: '^<[a-z_]*>$'
112+
Priority: 4
113+
SortPriority: 3
114+
InsertBraces: true
115+
IndentCaseLabels: true
116+
InsertNewlineAtEOF: true
117+
InsertTrailingCommas: Wrapped
118+
IndentRequires: true
119+
IndentPPDirectives: AfterHash
120+
IndentWidth: 2
121+
KeepEmptyLinesAtTheStartOfBlocks: false
122+
MaxEmptyLinesToKeep: 1
123+
Macros:
124+
- _LIBCUDACXX_TEMPLATE(...)=template<...>
125+
- _LIBCUDACXX_REQUIRES(...)=requires (...)
126+
NamespaceIndentation: None
127+
PackConstructorInitializers: Never
128+
PenaltyBreakAssignment: 30
129+
PenaltyBreakBeforeFirstCallParameter: 50
130+
PenaltyBreakComment: 0
131+
PenaltyBreakFirstLessLess: 0
132+
PenaltyBreakString: 70
133+
PenaltyBreakTemplateDeclaration: 0
134+
PenaltyExcessCharacter: 100
135+
PenaltyReturnTypeOnItsOwnLine: 90
136+
PenaltyIndentedWhitespace: 2
137+
PointerAlignment: Left
138+
ReflowComments: true
139+
RemoveSemicolon: false
140+
SortIncludes: CaseInsensitive
141+
SpaceAfterCStyleCast: true
142+
SpaceAfterLogicalNot: false
143+
SpaceAfterTemplateKeyword: true
144+
SpaceBeforeAssignmentOperators: true
145+
SpaceBeforeCpp11BracedList: false
146+
SpaceBeforeCtorInitializerColon: true
147+
SpaceBeforeInheritanceColon: true
148+
SpaceBeforeParens: ControlStatements
149+
SpaceBeforeRangeBasedForLoopColon: true
150+
SpaceInEmptyParentheses: false
151+
SpacesBeforeTrailingComments: 1
152+
SpacesInAngles: Leave
153+
SpacesInCStyleCastParentheses: false
154+
SpacesInParentheses: false
155+
SpacesInSquareBrackets: false
156+
Standard: c++20
157+
StatementMacros: [
158+
'CUB_NAMESPACE_BEGIN',
159+
'CUB_NAMESPACE_END',
160+
'THRUST_NAMESPACE_BEGIN',
161+
'THRUST_NAMESPACE_END',
162+
'_LIBCUDACXX_BEGIN_NAMESPACE_STD',
163+
'_LIBCUDACXX_END_NAMESPACE_STD',
164+
'_LIBCUDACXX_BEGIN_NAMESPACE_STD_NOVERSION',
165+
'_LIBCUDACXX_END_NAMESPACE_STD_NOVERSION',
166+
'_LIBCUDACXX_BEGIN_NAMESPACE_RANGES',
167+
'_LIBCUDACXX_END_NAMESPACE_RANGES',
168+
'_LIBCUDACXX_BEGIN_NAMESPACE_RANGES_ABI',
169+
'_LIBCUDACXX_END_NAMESPACE_RANGES_ABI',
170+
'_LIBCUDACXX_BEGIN_NAMESPACE_CPO',
171+
'_LIBCUDACXX_END_NAMESPACE_CPO',
172+
'_LIBCUDACXX_BEGIN_NAMESPACE_VIEWS',
173+
'_LIBCUDACXX_END_NAMESPACE_VIEWS',
174+
]
175+
TabWidth: 2
176+
UseTab: Never

cub/.clang-format

-86
This file was deleted.

libcudacxx/.clang-format

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
BasedOnStyle: InheritParentConfig
2+
SortIncludes: Never
3+
IncludeBlocks: Preserve

thrust/.clang-format

-90
This file was deleted.

0 commit comments

Comments
 (0)