Skip to content

Commit ed1ecba

Browse files
committed
Version 0.0.1
0 parents  commit ed1ecba

File tree

6,146 files changed

+419146
-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.

6,146 files changed

+419146
-0
lines changed

.clang-format

Lines changed: 240 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,240 @@
1+
# Commented out parameters are those with the same value as base LLVM style.
2+
# We can uncomment them if we want to change their value, or enforce the
3+
# chosen value in case the base style changes (last sync: Clang 17.0.6).
4+
BasedOnStyle: LLVM
5+
AccessModifierOffset: -4
6+
AlignAfterOpenBracket: DontAlign
7+
# AlignArrayOfStructures: None
8+
# AlignConsecutiveAssignments:
9+
# Enabled: false
10+
# AcrossEmptyLines: false
11+
# AcrossComments: false
12+
# AlignCompound: false
13+
# PadOperators: true
14+
# AlignConsecutiveBitFields:
15+
# Enabled: false
16+
# AcrossEmptyLines: false
17+
# AcrossComments: false
18+
# AlignCompound: false
19+
# PadOperators: false
20+
# AlignConsecutiveDeclarations:
21+
# Enabled: false
22+
# AcrossEmptyLines: false
23+
# AcrossComments: false
24+
# AlignCompound: false
25+
# PadOperators: false
26+
# AlignConsecutiveMacros:
27+
# Enabled: false
28+
# AcrossEmptyLines: false
29+
# AcrossComments: false
30+
# AlignCompound: false
31+
# PadOperators: false
32+
# AlignConsecutiveShortCaseStatements:
33+
# Enabled: false
34+
# AcrossEmptyLines: false
35+
# AcrossComments: false
36+
# AlignCaseColons: false
37+
# AlignEscapedNewlines: Right
38+
AlignOperands: DontAlign
39+
AlignTrailingComments:
40+
Kind: Always
41+
OverEmptyLines: 0
42+
# AllowAllArgumentsOnNextLine: true
43+
AllowAllParametersOfDeclarationOnNextLine: false
44+
# AllowShortBlocksOnASingleLine: Never
45+
# AllowShortCaseLabelsOnASingleLine: false
46+
# AllowShortEnumsOnASingleLine: true
47+
AllowShortFunctionsOnASingleLine: Inline
48+
# AllowShortIfStatementsOnASingleLine: Never
49+
# AllowShortLambdasOnASingleLine: All
50+
# AllowShortLoopsOnASingleLine: false
51+
# AlwaysBreakAfterDefinitionReturnType: None
52+
# AlwaysBreakAfterReturnType: None
53+
# AlwaysBreakBeforeMultilineStrings: false
54+
# AlwaysBreakTemplateDeclarations: MultiLine
55+
AttributeMacros:
56+
- _ALWAYS_INLINE_
57+
- _FORCE_INLINE_
58+
- _NO_INLINE_
59+
# BinPackArguments: true
60+
# BinPackParameters: true
61+
# BitFieldColonSpacing: Both
62+
# BraceWrapping:
63+
# AfterCaseLabel: false
64+
# AfterClass: false
65+
# AfterControlStatement: Never
66+
# AfterEnum: false
67+
# AfterFunction: false
68+
# AfterNamespace: false
69+
# AfterObjCDeclaration: false
70+
# AfterStruct: false
71+
# AfterUnion: false
72+
# AfterExternBlock: false
73+
# BeforeCatch: false
74+
# BeforeElse: false
75+
# BeforeLambdaBody: false
76+
# BeforeWhile: false
77+
# IndentBraces: false
78+
# SplitEmptyFunction: true
79+
# SplitEmptyRecord: true
80+
# SplitEmptyNamespace: true
81+
# BreakAfterAttributes: Never
82+
# BreakAfterJavaFieldAnnotations: false
83+
# BreakArrays: true
84+
# BreakBeforeBinaryOperators: None
85+
BreakBeforeBraces: Allman
86+
# BreakBeforeConceptDeclarations: Always
87+
# BreakBeforeInlineASMColon: OnlyMultiline
88+
# BreakBeforeTernaryOperators: true
89+
BreakConstructorInitializers: AfterColon
90+
# BreakInheritanceList: BeforeColon
91+
# BreakStringLiterals: true
92+
ColumnLimit: 0
93+
# CommentPragmas: "^ IWYU pragma:"
94+
# CompactNamespaces: false
95+
ConstructorInitializerIndentWidth: 8
96+
ContinuationIndentWidth: 8
97+
Cpp11BracedListStyle: false
98+
# DerivePointerAlignment: false
99+
# DisableFormat: false
100+
# EmptyLineAfterAccessModifier: Never
101+
# EmptyLineBeforeAccessModifier: LogicalBlock
102+
# ExperimentalAutoDetectBinPacking: false
103+
# FixNamespaceComments: true
104+
# ForEachMacros:
105+
# - foreach
106+
# - Q_FOREACH
107+
# - BOOST_FOREACH
108+
# IfMacros:
109+
# - KJ_IF_MAYBE
110+
# IncludeBlocks: Preserve
111+
IncludeCategories:
112+
- Regex: ^".*"$
113+
Priority: 1
114+
- Regex: ^<.*\.h>$
115+
Priority: 2
116+
- Regex: ^<.*>$
117+
Priority: 3
118+
# IncludeIsMainRegex: (Test)?$
119+
# IncludeIsMainSourceRegex: ""
120+
# IndentAccessModifiers: false
121+
# IndentCaseBlocks: false
122+
IndentCaseLabels: true
123+
# IndentExternBlock: AfterExternBlock
124+
# IndentGotoLabels: true
125+
# IndentPPDirectives: None
126+
# IndentRequiresClause: true
127+
IndentWidth: 4
128+
# IndentWrappedFunctionNames: false
129+
InsertBraces: true
130+
# InsertNewlineAtEOF: false
131+
# InsertTrailingCommas: None
132+
# IntegerLiteralSeparator:
133+
# Binary: 0
134+
# BinaryMinDigits: 0
135+
# Decimal: 0
136+
# DecimalMinDigits: 0
137+
# Hex: 0
138+
# HexMinDigits: 0
139+
JavaImportGroups:
140+
- org.godotengine
141+
- android
142+
- androidx
143+
- com.android
144+
- com.google
145+
- java
146+
- javax
147+
# JavaScriptQuotes: Leave
148+
# JavaScriptWrapImports: true
149+
# KeepEmptyLinesAtEOF: false
150+
KeepEmptyLinesAtTheStartOfBlocks: false
151+
# LambdaBodyIndentation: Signature
152+
# Language: Cpp
153+
# LineEnding: DeriveLF
154+
# MacroBlockBegin: ""
155+
# MacroBlockEnd: ""
156+
# MaxEmptyLinesToKeep: 1
157+
# NamespaceIndentation: None
158+
# ObjCBinPackProtocolList: Auto
159+
ObjCBlockIndentWidth: 4
160+
# ObjCBreakBeforeNestedBlockParam: true
161+
# ObjCSpaceAfterProperty: false
162+
# ObjCSpaceBeforeProtocolList: true
163+
# PPIndentWidth: -1
164+
PackConstructorInitializers: NextLine
165+
# PenaltyBreakAssignment: 2
166+
# PenaltyBreakBeforeFirstCallParameter: 19
167+
# PenaltyBreakComment: 300
168+
# PenaltyBreakFirstLessLess: 120
169+
# PenaltyBreakOpenParenthesis: 0
170+
# PenaltyBreakString: 1000
171+
# PenaltyBreakTemplateDeclaration: 10
172+
# PenaltyExcessCharacter: 1000000
173+
# PenaltyIndentedWhitespace: 0
174+
# PenaltyReturnTypeOnItsOwnLine: 60
175+
# PointerAlignment: Right
176+
# QualifierAlignment: Leave
177+
# ReferenceAlignment: Pointer
178+
# ReflowComments: true
179+
# RemoveBracesLLVM: false
180+
# RemoveParentheses: Leave
181+
RemoveSemicolon: true
182+
# RequiresClausePosition: OwnLine
183+
# RequiresExpressionIndentation: OuterScope
184+
# SeparateDefinitionBlocks: Leave
185+
# ShortNamespaceLines: 1
186+
# SortIncludes: CaseSensitive
187+
# SortJavaStaticImport: Before
188+
# SortUsingDeclarations: LexicographicNumeric
189+
# SpaceAfterCStyleCast: false
190+
# SpaceAfterLogicalNot: false
191+
# SpaceAfterTemplateKeyword: true
192+
# SpaceAroundPointerQualifiers: Default
193+
# SpaceBeforeAssignmentOperators: true
194+
# SpaceBeforeCaseColon: false
195+
# SpaceBeforeCpp11BracedList: false
196+
# SpaceBeforeCtorInitializerColon: true
197+
# SpaceBeforeInheritanceColon: true
198+
# SpaceBeforeJsonColon: false
199+
# SpaceBeforeParens: ControlStatements
200+
# SpaceBeforeParensOptions:
201+
# AfterControlStatements: true
202+
# AfterForeachMacros: true
203+
# AfterFunctionDeclarationName: false
204+
# AfterFunctionDefinitionName: false
205+
# AfterIfMacros: true
206+
# AfterOverloadedOperator: false
207+
# AfterRequiresInClause: false
208+
# AfterRequiresInExpression: false
209+
# BeforeNonEmptyParentheses: false
210+
# SpaceBeforeRangeBasedForLoopColon: true
211+
# SpaceBeforeSquareBrackets: false
212+
# SpaceInEmptyBlock: false
213+
SpacesBeforeTrailingComments: 1
214+
# SpacesInAngles: Never
215+
# SpacesInContainerLiterals: true
216+
SpacesInLineCommentPrefix:
217+
Minimum: 1 # We want a minimum of 1 for comments, but allow 0 for disabled code.
218+
Maximum: -1
219+
# SpacesInParens: Never
220+
# SpacesInParensOptions:
221+
# InConditionalStatements: false
222+
# InCStyleCasts: false
223+
# InEmptyParentheses: false
224+
# Other: false
225+
# SpacesInSquareBrackets: false
226+
Standard: c++20
227+
# StatementAttributeLikeMacros:
228+
# - Q_EMIT
229+
# StatementMacros:
230+
# - Q_UNUSED
231+
# - QT_REQUIRE_VERSION
232+
TabWidth: 4
233+
UseTab: Always
234+
# VerilogBreakBetweenInstancePorts: true
235+
# WhitespaceSensitiveMacros:
236+
# - BOOST_PP_STRINGIZE
237+
# - CF_SWIFT_NAME
238+
# - NS_SWIFT_NAME
239+
# - PP_STRINGIZE
240+
# - STRINGIZE

.clang-tidy

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Enable all the relevant checks and then disable all the ones I don't care about or that don't work well with godot.
2+
# Run with: run-clang-tidy -use-color -config-file ./.clang-tidy -source-filter '.*/gsg/src/.*\.cpp' -p ../godot -extra-arg=-std=c++23
3+
# Add "-fix" to apply fixes automatically.
4+
# https://github.com/dementive/gsg/blob/main/.clangd
5+
Checks: '
6+
-*,
7+
clang-analyzer-*,-clang-analyzer-osx*,bugprone-*,concurrency-*,cppcoreguidelines-*,misc-*,modernize-*,performance-*,portability-*,readability-*,
8+
-modernize-use-trailing-return-type,-modernize-use-nodiscard,-modernize-use-auto,-modernize-macro-to-enum,-modernize-avoid-c-arrays,
9+
-misc-include-cleaner,-misc-unused-parameters,
10+
-misc-non-private-member-variables-in-classes,-cppcoreguidelines-non-private-member-variables-in-classes,
11+
-readability-braces-around-statements,-readability-else-after-return,-readability-magic-numbers,-readability-simplify-boolean-expr,
12+
-bugprone-macro-parentheses,-bugprone-narrowing-conversions,-bugprone-easily-swappable-parameters,-bugprone-switch-missing-default-case,-bugprone-unhandled-self-assignment,
13+
-cppcoreguidelines-pro-type-union-access,-cppcoreguidelines-avoid-magic-numbers,-cppcoreguidelines-macro-usage,-cppcoreguidelines-special-member-functions,
14+
-cppcoreguidelines-pro-type-reinterpret-cast,-cppcoreguidelines-pro-type-const-cast,-cppcoreguidelines-narrowing-conversions,-cppcoreguidelines-owning-memory,
15+
-cppcoreguidelines-macro-to-enum,-cppcoreguidelines-avoid-c-arrays,-cppcoreguidelines-pro-bounds-constant-array-index, -readability-function-cognitive-complexity, -cppcoreguidelines-no-malloc, -cppcoreguidelines-pro-bounds-pointer-arithmetic, -cppcoreguidelines-avoid-do-while, -readability-identifier-length, -cppcoreguidelines-avoid-non-const-global-variables, -cppcoreguidelines-avoid-goto,
16+
-performance-implicit-conversion-in-loop
17+
'
18+
FormatStyle: file

.clangd

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# https://clangd.llvm.org/config
2+
---
3+
4+
# clang-tidy checks to remove from clangd that we still want to see when running clang-tidy manually but don't care about
5+
Diagnostics:
6+
ClangTidy:
7+
Remove: [bugprone-branch-clone, readability-convert-member-functions-to-static, readability-static-accessed-through-instance,readability-make-member-function-const]
8+
FastCheckFilter: Loose
9+
10+
# Exclude certain, noisy warnings that lack full context. Replace with lowered severity if/when
11+
# clangd gets diagnostic severity support. (See: https://github.com/clangd/clangd/issues/1937)
12+
CompileFlags:
13+
Add:
14+
- -Wno-unneeded-internal-declaration
15+
- -Wno-unused-const-variable
16+
- -Wno-unused-function
17+
- -Wno-unused-variable
18+
- -Wno-unused-private-field
19+
- -Wno-unused-but-set-variable
20+
- -Wno-unused-lambda-capture
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Bug report
2+
description: Report a bug with the godot-cpp template
3+
body:
4+
5+
- type: markdown
6+
attributes:
7+
value: |
8+
- Write a descriptive issue title above.
9+
- Search [open](https://github.com/godotengine/godot-cpp-template/issues) and [closed](https://github.com/godotengine/godot-cpp-template/issues?q=is%3Aissue+is%3Aclosed) issues to ensure it has not already been reported.
10+
- type: input
11+
attributes:
12+
label: Godot version
13+
description: >
14+
Specify the Git commit hash of your Godot build.
15+
placeholder: v4.0.stable.official [92bee43ad]
16+
validations:
17+
required: true
18+
19+
- type: input
20+
attributes:
21+
label: godot-cpp version
22+
description: >
23+
Specify the Git commit hash of the godot-cpp submodule in your project. You can run `git status` inside the folder to check it.
24+
placeholder: v4.0.stable.official [9d1c396c5]
25+
validations:
26+
required: true
27+
28+
- type: input
29+
attributes:
30+
label: System information
31+
description: |
32+
Specify the OS version.
33+
placeholder: Windows 10
34+
validations:
35+
required: true
36+
37+
- type: textarea
38+
attributes:
39+
label: Issue description
40+
description: |
41+
Describe your issue briefly. What doesn't work, and how do you expect it to work instead?
42+
You can include images or videos with drag and drop, and format code blocks or logs with <code>```</code> tags.
43+
validations:
44+
required: true

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
blank_issues_enabled: false
2+
3+
contact_links:
4+
- name: Godot proposals
5+
url: https://github.com/godotengine/godot-proposals
6+
about: Please submit feature proposals on the Godot proposals repository, not here.
7+
8+
- name: Godot documentation repository
9+
url: https://github.com/godotengine/godot-docs
10+
about: Please report issues with documentation on the Godot documentation repository, not here.
11+
12+
- name: Godot community channels
13+
url: https://godotengine.org/community
14+
about: Please ask for technical support on one of the other community channels, not here.

0 commit comments

Comments
 (0)