Skip to content

Commit e89f18d

Browse files
committed
[feat]完成了最基本的宏展开(函数式)
1 parent aa76077 commit e89f18d

18 files changed

+3495
-0
lines changed

.clang-format

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Language: Cpp
2+
BasedOnStyle: Google
3+
ColumnLimit: 120

.clang-tidy

+147
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
# Generated from CLion Inspection settings
2+
---
3+
Checks: '-*,
4+
bugprone-argument-comment,
5+
bugprone-assert-side-effect,
6+
bugprone-bad-signal-to-kill-thread,
7+
bugprone-branch-clone,
8+
bugprone-copy-constructor-init,
9+
bugprone-dangling-handle,
10+
bugprone-dynamic-static-initializers,
11+
bugprone-fold-init-type,
12+
bugprone-forward-declaration-namespace,
13+
bugprone-forwarding-reference-overload,
14+
bugprone-inaccurate-erase,
15+
bugprone-incorrect-roundings,
16+
bugprone-integer-division,
17+
bugprone-lambda-function-name,
18+
bugprone-macro-parentheses,
19+
bugprone-macro-repeated-side-effects,
20+
bugprone-misplaced-operator-in-strlen-in-alloc,
21+
bugprone-misplaced-pointer-arithmetic-in-alloc,
22+
bugprone-misplaced-widening-cast,
23+
bugprone-move-forwarding-reference,
24+
bugprone-multiple-statement-macro,
25+
bugprone-no-escape,
26+
bugprone-parent-virtual-call,
27+
bugprone-posix-return,
28+
bugprone-reserved-identifier,
29+
bugprone-sizeof-container,
30+
bugprone-sizeof-expression,
31+
bugprone-spuriously-wake-up-functions,
32+
bugprone-string-constructor,
33+
bugprone-string-integer-assignment,
34+
bugprone-string-literal-with-embedded-nul,
35+
bugprone-suspicious-enum-usage,
36+
bugprone-suspicious-include,
37+
bugprone-suspicious-memset-usage,
38+
bugprone-suspicious-missing-comma,
39+
bugprone-suspicious-semicolon,
40+
bugprone-suspicious-string-compare,
41+
bugprone-suspicious-memory-comparison,
42+
bugprone-suspicious-realloc-usage,
43+
bugprone-swapped-arguments,
44+
bugprone-terminating-continue,
45+
bugprone-throw-keyword-missing,
46+
bugprone-too-small-loop-variable,
47+
bugprone-undefined-memory-manipulation,
48+
bugprone-undelegated-constructor,
49+
bugprone-unhandled-self-assignment,
50+
bugprone-unused-raii,
51+
bugprone-unused-return-value,
52+
bugprone-use-after-move,
53+
bugprone-virtual-near-miss,
54+
cert-dcl21-cpp,
55+
cert-dcl58-cpp,
56+
cert-err34-c,
57+
cert-err52-cpp,
58+
cert-err60-cpp,
59+
cert-flp30-c,
60+
cert-msc50-cpp,
61+
cert-msc51-cpp,
62+
cert-str34-c,
63+
cppcoreguidelines-interfaces-global-init,
64+
cppcoreguidelines-narrowing-conversions,
65+
cppcoreguidelines-pro-type-member-init,
66+
cppcoreguidelines-pro-type-static-cast-downcast,
67+
cppcoreguidelines-slicing,
68+
google-default-arguments,
69+
google-explicit-constructor,
70+
google-runtime-operator,
71+
hicpp-exception-baseclass,
72+
hicpp-multiway-paths-covered,
73+
misc-misplaced-const,
74+
misc-new-delete-overloads,
75+
misc-no-recursion,
76+
misc-non-copyable-objects,
77+
misc-throw-by-value-catch-by-reference,
78+
misc-unconventional-assign-operator,
79+
misc-uniqueptr-reset-release,
80+
modernize-avoid-bind,
81+
modernize-concat-nested-namespaces,
82+
modernize-deprecated-headers,
83+
modernize-deprecated-ios-base-aliases,
84+
modernize-loop-convert,
85+
modernize-make-shared,
86+
modernize-make-unique,
87+
modernize-pass-by-value,
88+
modernize-raw-string-literal,
89+
modernize-redundant-void-arg,
90+
modernize-replace-auto-ptr,
91+
modernize-replace-disallow-copy-and-assign-macro,
92+
modernize-replace-random-shuffle,
93+
modernize-return-braced-init-list,
94+
modernize-shrink-to-fit,
95+
modernize-unary-static-assert,
96+
modernize-use-auto,
97+
modernize-use-bool-literals,
98+
modernize-use-emplace,
99+
modernize-use-equals-default,
100+
modernize-use-equals-delete,
101+
modernize-use-nodiscard,
102+
modernize-use-noexcept,
103+
modernize-use-nullptr,
104+
modernize-use-override,
105+
modernize-use-transparent-functors,
106+
modernize-use-uncaught-exceptions,
107+
mpi-buffer-deref,
108+
mpi-type-mismatch,
109+
openmp-use-default-none,
110+
performance-faster-string-find,
111+
performance-for-range-copy,
112+
performance-implicit-conversion-in-loop,
113+
performance-inefficient-algorithm,
114+
performance-inefficient-string-concatenation,
115+
performance-inefficient-vector-operation,
116+
performance-move-const-arg,
117+
performance-move-constructor-init,
118+
performance-no-automatic-move,
119+
performance-noexcept-move-constructor,
120+
performance-trivially-destructible,
121+
performance-type-promotion-in-math-fn,
122+
performance-unnecessary-copy-initialization,
123+
performance-unnecessary-value-param,
124+
portability-simd-intrinsics,
125+
readability-avoid-const-params-in-decls,
126+
readability-const-return-type,
127+
readability-container-size-empty,
128+
readability-convert-member-functions-to-static,
129+
readability-delete-null-pointer,
130+
readability-deleted-default,
131+
readability-inconsistent-declaration-parameter-name,
132+
readability-make-member-function-const,
133+
readability-misleading-indentation,
134+
readability-misplaced-array-index,
135+
readability-non-const-parameter,
136+
readability-redundant-control-flow,
137+
readability-redundant-declaration,
138+
readability-redundant-function-ptr-dereference,
139+
readability-redundant-smartptr-get,
140+
readability-redundant-string-cstr,
141+
readability-redundant-string-init,
142+
readability-simplify-subscript-expr,
143+
readability-static-accessed-through-instance,
144+
readability-static-definition-in-anonymous-namespace,
145+
readability-string-compare,
146+
readability-uniqueptr-delete-release,
147+
readability-use-anyofallof'

.clangd

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
CompileFlags:
2+
Add: [
3+
-std=c++23,
4+
-Wall,
5+
-Wextra
6+
]
7+
8+
Diagnostics:
9+
ClangTidy:
10+
Add: [
11+
bugprone-*,
12+
boost-*,
13+
clang-analyzer-*,
14+
# cppcoreguidelines-*,
15+
google-*,
16+
misc-*,
17+
# modernize-*,
18+
performance-*,
19+
# readability-*
20+
]
21+
22+
# CheckOptions:
23+
# readability-identifier-naming.VariableCase: lower_case
24+
# readability-identifier-naming.ProtectedMemberCase: lower_case
25+
# readability-identifier-naming.ProtectedMemberSuffix: _
26+
# readability-identifier-naming.PrivateMemberCase: lower_case
27+
# readability-identifier-naming.PrivateMemberSuffix: _
28+
# readability-identifier-naming.PublicMemberCase: lower_case
29+
# readability-identifier-naming.NamespaceCase: lower_case
30+
# readability-identifier-naming.EnumCase: CamelCase
31+
# readability-identifier-naming.ClassCase: CamelCase
32+
# readability-identifier-naming.StructCase: CamelCase
33+
# readability-identifier-naming.FunctionCase: CamelCase
34+
# readability-identifier-naming.ClassMethodCase: CamelCase
35+
# readability-identifier-naming.MethodCase: CamelCase
36+
# readability-identifier-naming.ConstantPrefix: k
37+
# readability-identifier-naming.ConstantCase: CamelCase
38+

.gitignore

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
/build
2+
/cmake-build-debug
3+
*.exe
4+
*.obj
5+
*.i
6+
/.idea/sonarlint
7+
*.idx
8+
*.zip
9+
*.name
10+
### VisualStudioCode ###
11+
.vscode/*
12+
!.vscode/settings.json
13+
!.vscode/tasks.json
14+
!.vscode/launch.json
15+
!.vscode/extensions.json
16+
!.vscode/*.code-snippets
17+
18+
# Local History for Visual Studio Code
19+
.history/
20+
21+
# Built Visual Studio Code Extensions
22+
*.vsix
23+
24+
### VisualStudioCode Patch ###
25+
# Ignore all local history of files
26+
.history
27+
.ionide
28+
/.idea/editor.xml
29+
cmake-build-debug-
30+
/html/
31+
/latex/
32+
*.png
33+
/cmake-build-release/*
34+
cmake*
35+
.codebuddy
36+
.vscode
37+
.idea

0 commit comments

Comments
 (0)