Skip to content

Commit 65cfcad

Browse files
committed
Initial commit
0 parents  commit 65cfcad

File tree

116 files changed

+13231
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

116 files changed

+13231
-0
lines changed

.clang-format

+162
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
---
2+
Language: Cpp
3+
Standard: c++17
4+
AccessModifierOffset: -2
5+
AlignAfterOpenBracket: Align
6+
AlignArrayOfStructures: Left
7+
AlignConsecutiveAssignments: None
8+
AlignConsecutiveBitFields: None
9+
AlignConsecutiveDeclarations: None
10+
AlignConsecutiveMacros: None
11+
AlignEscapedNewlines: Right
12+
AlignOperands: Align
13+
AlignTrailingComments: false
14+
AllowAllArgumentsOnNextLine: false
15+
AllowAllParametersOfDeclarationOnNextLine: false
16+
AllowShortBlocksOnASingleLine: Empty
17+
AllowShortCaseLabelsOnASingleLine: true
18+
AllowShortEnumsOnASingleLine: true
19+
AllowShortFunctionsOnASingleLine: None
20+
AllowShortIfStatementsOnASingleLine: Never
21+
AllowShortLambdasOnASingleLine: Empty
22+
AllowShortLoopsOnASingleLine: false
23+
AlwaysBreakAfterReturnType: None
24+
AlwaysBreakBeforeMultilineStrings: false
25+
AlwaysBreakTemplateDeclarations: Yes
26+
BinPackArguments: true
27+
BinPackParameters: true
28+
BitFieldColonSpacing: Both
29+
BraceWrapping:
30+
AfterCaseLabel: false
31+
AfterClass: true
32+
AfterControlStatement: Never
33+
AfterEnum: true
34+
AfterExternBlock: false
35+
AfterFunction: true
36+
AfterNamespace: true
37+
AfterObjCDeclaration: false
38+
AfterStruct: true
39+
AfterUnion: true
40+
BeforeCatch: true
41+
BeforeElse: true
42+
BeforeLambdaBody: false
43+
BeforeWhile: true
44+
IndentBraces: false
45+
SplitEmptyFunction: true
46+
SplitEmptyNamespace: true
47+
SplitEmptyRecord: true
48+
BreakBeforeBinaryOperators: None
49+
BreakBeforeBraces: Custom
50+
BreakBeforeConceptDeclarations: true
51+
BreakBeforeTernaryOperators: true
52+
BreakConstructorInitializers: AfterColon
53+
BreakInheritanceList: AfterColon
54+
BreakStringLiterals: true
55+
ColumnLimit: 120
56+
CommentPragmas: '^ IWYU pragma:'
57+
CompactNamespaces: false
58+
ConstructorInitializerIndentWidth: 2
59+
ContinuationIndentWidth: 2
60+
Cpp11BracedListStyle: true
61+
DeriveLineEnding: false
62+
DerivePointerAlignment: false
63+
DisableFormat: false
64+
EmptyLineAfterAccessModifier: Never
65+
EmptyLineBeforeAccessModifier: LogicalBlock
66+
FixNamespaceComments: false
67+
IncludeBlocks: Merge
68+
IncludeCategories:
69+
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
70+
Priority: 2
71+
SortPriority: 0
72+
CaseSensitive: false
73+
- Regex: '^((<|")(boost|gtest|gmock|isl|json)/)'
74+
Priority: 3
75+
SortPriority: 0
76+
CaseSensitive: false
77+
- Regex: '<[[:alnum:].]+>'
78+
Priority: 4
79+
CaseSensitive: false
80+
- Regex: '.*'
81+
Priority: 1
82+
SortPriority: 0
83+
CaseSensitive: false
84+
IncludeIsMainRegex: '(_test)?$'
85+
IncludeIsMainSourceRegex: ''
86+
IndentAccessModifiers: false
87+
IndentCaseBlocks: false
88+
IndentCaseLabels: true
89+
IndentExternBlock: AfterExternBlock
90+
IndentGotoLabels: true
91+
IndentPPDirectives: BeforeHash
92+
#IndentRequiresClause: false
93+
IndentWidth: 4
94+
IndentWrappedFunctionNames: true
95+
InsertBraces: true
96+
InsertTrailingCommas: None
97+
KeepEmptyLinesAtTheStartOfBlocks: false
98+
LambdaBodyIndentation: Signature
99+
MacroBlockBegin: ''
100+
MacroBlockEnd: ''
101+
MaxEmptyLinesToKeep: 2
102+
NamespaceIndentation: All
103+
PackConstructorInitializers: CurrentLine
104+
PenaltyBreakAssignment: 2
105+
PenaltyBreakBeforeFirstCallParameter: 19
106+
PenaltyBreakComment: 300
107+
PenaltyBreakFirstLessLess: 120
108+
PenaltyBreakOpenParenthesis: 0
109+
PenaltyBreakString: 1000
110+
PenaltyBreakTemplateDeclaration: 10
111+
PenaltyExcessCharacter: 1000000
112+
PenaltyIndentedWhitespace: 0
113+
PenaltyReturnTypeOnItsOwnLine: 60
114+
PointerAlignment: Left
115+
PPIndentWidth: 2
116+
QualifierAlignment: Left
117+
ReferenceAlignment: Pointer
118+
ReflowComments: true
119+
RemoveBracesLLVM: false
120+
#RequiresClausePosition: OwnLine
121+
SeparateDefinitionBlocks: Always
122+
ShortNamespaceLines: 1
123+
SortIncludes: CaseInsensitive
124+
SortUsingDeclarations: true
125+
SpaceAfterCStyleCast: false
126+
SpaceAfterLogicalNot: false
127+
SpaceAfterTemplateKeyword: true
128+
SpaceAroundPointerQualifiers: Before
129+
SpaceBeforeAssignmentOperators: true
130+
SpaceBeforeCaseColon: false
131+
SpaceBeforeCpp11BracedList: false
132+
SpaceBeforeCtorInitializerColon: true
133+
SpaceBeforeInheritanceColon: true
134+
SpaceBeforeParens: ControlStatements
135+
SpaceBeforeParensOptions:
136+
AfterControlStatements: true
137+
AfterForeachMacros: true
138+
AfterFunctionDeclarationName: false
139+
AfterFunctionDefinitionName: false
140+
AfterIfMacros: true
141+
AfterOverloadedOperator: false
142+
#AfterRequiresInClause: true
143+
#AfterRequiresInExpression: true
144+
BeforeNonEmptyParentheses: false
145+
SpaceBeforeRangeBasedForLoopColon: true
146+
SpaceBeforeSquareBrackets: false
147+
SpaceInEmptyBlock: false
148+
SpaceInEmptyParentheses: false
149+
SpacesBeforeTrailingComments: 1
150+
SpacesInAngles: Never
151+
SpacesInConditionalStatement: false
152+
SpacesInContainerLiterals: true
153+
SpacesInCStyleCastParentheses: false
154+
SpacesInLineCommentPrefix:
155+
Minimum: 1
156+
Maximum: -1
157+
SpacesInParentheses: false
158+
SpacesInSquareBrackets: false
159+
TabWidth: 4
160+
UseCRLF: false
161+
UseTab: Never
162+
...

.clang-tidy

+65
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
Checks: >-
3+
abseil-*,
4+
boost-*,
5+
bugprone-*,
6+
cert-*,
7+
clang-analyzer-*,
8+
clang-diagnostic-*,
9+
concurrency-*,
10+
cppcoreguidelines-*,
11+
hicpp-*,
12+
misc-*,
13+
modernize-*,
14+
performance-*,
15+
portability-*,
16+
readability-*,
17+
-bugprone-easily-swappable-parameters,
18+
-modernize-use-trailing-return-type,
19+
-readability-identifier-length
20+
WarningsAsErrors: ""
21+
HeaderFilterRegex: ""
22+
FormatStyle: "file"
23+
AnalyzeTemporaryDtors: false
24+
UseColor: true
25+
CheckOptions:
26+
- key: misc-const-correctness.WarnPointersAsValues
27+
value: true
28+
- key: misc-const-correctness.TransformPointersAsValues
29+
value: true
30+
- key: readability-identifier-naming.ClassCase
31+
value: CamelCase
32+
- key: readability-identifier-naming.EnumCase
33+
value: CamelCase
34+
- key: readability-identifier-naming.EnumConstantCase
35+
value: lower_case
36+
- key: readability-identifier-naming.FunctionCase
37+
value: lower_case
38+
- key: readability-identifier-naming.GlobalConstantCase
39+
value: UPPER_CASE
40+
- key: readability-identifier-naming.GlobalFunctionCase
41+
value: lower_case
42+
- key: readability-identifier-naming.MacroDefinitionCase
43+
value: UPPER_CASE
44+
- key: readability-identifier-naming.MemberCase
45+
value: lower_case
46+
- key: readability-identifier-naming.MethodCase
47+
value: lower_case
48+
- key: readability-identifier-naming.NamespaceCase
49+
value: lower_case
50+
- key: readability-identifier-naming.PrivateMemberSuffix
51+
value: "_"
52+
- key: readability-identifier-naming.StructCase
53+
value: CamelCase
54+
- key: readability-identifier-naming.TemplateParameterCase
55+
value: CamelCase
56+
- key: readability-identifier-naming.TypeAliasCase
57+
value: CamelCase
58+
- key: readability-identifier-naming.TypedefCase
59+
value: CamelCase
60+
- key: readability-identifier-naming.TypeTemplateParameterCase
61+
value: CamelCase
62+
- key: readability-identifier-naming.UnionCase
63+
value: CamelCase
64+
- key: readability-identifier-naming.VariableCase
65+
value: lower_case

.editorconfig

+140
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
#######################################
2+
# Core Options #
3+
#######################################
4+
5+
# This file is the top-most EditorConfig file
6+
root = true
7+
8+
# All Files
9+
[*]
10+
charset = utf-8
11+
guidelines = 120
12+
indent_size = 4
13+
indent_style = space
14+
insert_final_newline = true
15+
trim_trailing_whitespace = true
16+
17+
18+
#######################################
19+
# File Extension Settings #
20+
#######################################
21+
22+
# Visual Studio Solution Files
23+
[*.sln]
24+
indent_style = tab
25+
26+
# Visual Studio XML Project Files
27+
[*.{csproj,vbproj,vcxproj.filters,proj,projitems,shproj}]
28+
indent_size = 2
29+
30+
# XML Configuration Files
31+
[*.{xml,config,props,targets,nuspec,resx,ruleset,vsixmanifest,vsct}]
32+
indent_size = 2
33+
34+
# JSON Files
35+
[*.{json,json5,webmanifest}]
36+
indent_size = 2
37+
38+
# YAML Files
39+
[*.{yml,yaml,clang-format,clang-tidy}]
40+
indent_size = 2
41+
42+
# Markdown Files
43+
[*.{md,mdx}]
44+
trim_trailing_whitespace = false
45+
46+
# Web Files
47+
[*.{htm,html,js,jsm,ts,tsx,cjs,cts,ctsx,mjs,mts,mtsx,css,sass,scss,less,pcss,svg,vue}]
48+
indent_size = 2
49+
50+
# Python Files
51+
[*.{py,py3}]
52+
guidelines = 88
53+
54+
# Batch Files
55+
[*.{cmd,bat}]
56+
end_of_line = crlf
57+
58+
# Bash Files
59+
[*.sh]
60+
end_of_line = lf
61+
62+
# Makefiles
63+
[Makefile]
64+
end_of_line = lf
65+
indent_style = tab
66+
67+
# CMake
68+
[{CMakeLists.txt,*.cmake,*.rst}]
69+
indent_size = 2
70+
indent_style = space
71+
72+
73+
########################################
74+
# Code Style #
75+
########################################
76+
77+
# File extensions
78+
[*.{c++,c,cc,cpp,cppm,cxx,h,h++,hh,hpp,hxx,inl,ipp,ixx,tlh,tli}]
79+
end_of_line = lf
80+
81+
# C++
82+
cpp_generate_documentation_comments = doxygen_slash_star
83+
cpp_indent_access_specifiers = false
84+
cpp_indent_braces = false
85+
cpp_indent_case_contents = true
86+
cpp_indent_case_contents_when_block = false
87+
cpp_indent_case_labels = false
88+
cpp_indent_goto_labels = one_left
89+
cpp_indent_lambda_braces_when_parameter = false
90+
cpp_indent_multi_line_relative_to = innermost_parenthesis
91+
cpp_indent_namespace_contents = true
92+
cpp_indent_preprocessor = one_left
93+
cpp_indent_preserve_comments = false
94+
cpp_indent_preserve_within_parentheses = true
95+
cpp_indent_within_parentheses = align_to_parenthesis
96+
cpp_new_line_before_catch = true
97+
cpp_new_line_before_else = true
98+
cpp_new_line_before_open_brace_block = same_line
99+
cpp_new_line_before_open_brace_function = new_line
100+
cpp_new_line_before_open_brace_lambda = new_line
101+
cpp_new_line_before_open_brace_namespace = new_line
102+
cpp_new_line_before_open_brace_type = new_line
103+
cpp_new_line_before_while_in_do_while = true
104+
cpp_new_line_close_brace_same_line_empty_function = false
105+
cpp_new_line_close_brace_same_line_empty_type = false
106+
cpp_new_line_scope_braces_on_separate_lines = true
107+
cpp_space_after_cast_close_parenthesis = false
108+
cpp_space_after_comma = true
109+
cpp_space_after_keywords_in_control_flow_statements = true
110+
cpp_space_after_semicolon = true
111+
cpp_space_around_assignment_operator = insert
112+
cpp_space_around_binary_operator = insert
113+
cpp_space_around_ternary_operator = insert
114+
cpp_space_before_block_open_brace = true
115+
cpp_space_before_comma = false
116+
cpp_space_before_constructor_colon = true
117+
cpp_space_before_empty_square_brackets = false
118+
cpp_space_before_function_open_parenthesis = remove
119+
cpp_space_before_inheritance_colon = true
120+
cpp_space_before_initializer_list_open_brace = false
121+
cpp_space_before_lambda_open_parenthesis = false
122+
cpp_space_before_open_square_bracket = false
123+
cpp_space_between_empty_braces = false
124+
cpp_space_between_empty_lambda_brackets = false
125+
cpp_space_between_empty_parameter_list_parentheses = false
126+
cpp_space_between_empty_square_brackets = false
127+
cpp_space_group_square_brackets = true
128+
cpp_space_pointer_reference_alignment = left
129+
cpp_space_preserve_in_initializer_list = true
130+
cpp_space_remove_around_member_operators = true
131+
cpp_space_remove_around_unary_operator = true
132+
cpp_space_remove_before_semicolon = true
133+
cpp_space_within_cast_parentheses = false
134+
cpp_space_within_control_flow_statement_parentheses = false
135+
cpp_space_within_expression_parentheses = false
136+
cpp_space_within_initializer_list_braces = false
137+
cpp_space_within_lambda_brackets = false
138+
cpp_space_within_parameter_list_parentheses = false
139+
cpp_space_within_square_brackets = false
140+
cpp_wrap_preserve_blocks = never

0 commit comments

Comments
 (0)