Skip to content

Commit

Permalink
Initial commit v1.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
xfealal committed Apr 26, 2024
0 parents commit a2361e4
Show file tree
Hide file tree
Showing 1,582 changed files with 262,917 additions and 0 deletions.
145 changes: 145 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
---
Language: Cpp
# BasedOnStyle: Google
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: false
AlignConsecutiveAssignments: true
AlignConsecutiveDeclarations: true
AlignEscapedNewlines: Right
AlignOperands: true
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: true
BinPackArguments: false
BinPackParameters: false
BraceWrapping:
AfterCaseLabel: true
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterFunction: true
AfterNamespace: false
AfterObjCDeclaration: true
AfterStruct: true
AfterUnion: true
AfterExternBlock: true
BeforeCatch: true
BeforeElse: true
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: true
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: true
BreakConstructorInitializers: BeforeComma
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 120
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 2
ContinuationIndentWidth: 2
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '".*"'
Priority: 1
- Regex: '<star/.*>'
Priority: 2
- Regex: '^<(concepts|cstdlib|csignal|csetjmp|cstdarg|typeinfo|typeindex|type_traits|bitset|functional|utility|ctime|chrono|cstddef|initializer_list|tuple|any|optional|variant|compare|version|new|memory|scoped_allocator|memory_resource|climits|cfloat|cstdint|cinttypes|limits|exception|stdexcept|cassert|system_error|cerrno|contract|cctype|cwctype|cstring|cwchar|cuchar|string|string_view|charconv|array|vector|deque|list|forward_list|set|map|unordered_set|unordered_map|stack|queue|span|algorithm|execution|iterator|cmath|complex|valarray|random|numeric|ratio|cfenv|bit|iosfwd|ios|istream|ostream|iostream|fstream|sstream|syncstream|strstream|iomanip|streambuf|cstdio|locale|clocale|codecvt|regex|atomic|thread|mutex|shared_mutex|future|condition_variable|filesystem|experimental/filesystem|experimental/algorithm|experimental/execution_policy|experimental/exception_list|experimental/numeric|experimental/algorithm|experimental/any|experimental/chrono|experimental/deque|experimental/forward_list|experimental/future|experimental/list|experimental/functional|experimental/map|experimental/memory|experimental/memory_resource|experimental/optional|experimental/ratio|experimental/regex|experimental/set|experimental/string|experimental/string_view|experimental/system_error|experimental/tuple|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/utility|experimental/vector|experimental/atomic|experimental/barrier|experimental/future|experimental/latch|experimental/algorithm|experimental/array|experimental/deque|experimental/forward_list|experimental/functional|experimental/iterator|experimental/list|experimental/map|experimental/memory|experimental/numeric|experimental/propagate_const|experimental/random|experimental/set|experimental/source_location|experimental/string|experimental/type_traits|experimental/unordered_map|experimental/unordered_set|experimental/vector|experimental/ranges/algorithm|experimental/ranges/concepts|experimental/ranges/functional|experimental/ranges/iterator|experimental/ranges/random|experimental/ranges/range|experimental/ranges/tuple|experimental/ranges/type_traits|experimental/ranges/utility|ccomplex|ctgmath|ciso646|cstdalign|cstdbool|assert.h|complex.h|ctype.h|errno.h|fenv.h|float.h|inttypes.h|iso646.h|limits.h|locale.h|math.h|setjmp.h|signal.h|stdalign.h|stdarg.h|stdatomic.h|stdbool.h|stddef.h|stdint.h|stdio.h|stdlib.h|stdnoreturn.h|string.h|tgmath.h|threads.h|time.h|uchar.h|wchar.h)>'
Priority: 4
- Regex: '<.*>'
Priority: 3
SortPriority: 0
IncludeIsMainRegex: '([-_](test|unittest))?$'
IncludeIsMainSourceRegex: ''
IndentCaseLabels: true
IndentGotoLabels: true
IndentPPDirectives: AfterHash
IndentWidth: 2
IndentWrappedFunctionNames: true
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Never
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: false
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 200
PointerAlignment: Left
# error: unknown key 'Delimiter'
#RawStringFormats:
# - Delimiter: cc
# Language: Cpp
# BasedOnStyle: llvm
ReflowComments: true
SortIncludes: true
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
Standard: c++14
StatementMacros:
- Q_UNUSED
- QT_REQUIRE_VERSION
TabWidth: 8
UseCRLF: false
UseTab: Never
...

# error: unknown key 'tTheStartOfBlocks'
#tTheStartOfBlocks: true
#tTheStartOfBlocks: true
89 changes: 89 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
#########################################################################
## Comments on disabled checks
#########################################################################
#-cppcoreguidelines-avoid-c-arrays
# we still use c-arrays a lot, if fixed we can enable it again
#
#-cppcoreguidelines-avoid-magic-numbers
# Very restrictive - ANY non-const number asignment will be a warning
#
#-cppcoreguidelines-pro-bounds-pointer-arithmetic,
# we use ptr arithmetic on purpose
#
#-cppcoreguidelines-pro-type-vararg,
# due to bug https://reviews.llvm.org/D101259
#
#-cppcoreguidelines-pro-bounds-array-to-pointer-decay
# even use of __FUNCTION__ would be a warning
#########################################################################

Checks: >
clang-diagnostic-*,
clang-analyzer-*,
cppcoreguidelines-*,
-cppcoreguidelines-avoid-c-arrays,
-cppcoreguidelines-avoid-magic-numbers,
-cppcoreguidelines-pro-type-vararg,
-cppcoreguidelines-pro-bounds-pointer-arithmetic,
-cppcoreguidelines-pro-bounds-array-to-pointer-decay,
performance-*,
portability-*,
readability-identifier-naming
WarningsAsErrors: 'false'

CheckOptions:
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
- { key: readability-identifier-naming.StructCase, value: CamelCase }
- { key: readability-identifier-naming.EnumCase, value: CamelCase }
- { key: readability-identifier-naming.TypedefCase, value: CamelCase }
- { key: readability-identifier-naming.TypedefAliasCase, value: CamelCase }

- { key: readability-identifier-naming.TemplateParameterCase, value: CamelCase }
- { key: readability-identifier-naming.TemplateParameterPrefix, value: T }
- { key: readability-identifier-naming.TemplateParameterIgnoredRegexp, value: '[A-Z]' }

- { key: readability-identifier-naming.FunctionCase, value: camelBack }
- { key: readability-identifier-naming.VariableCase, value: camelBack }
- { key: readability-identifier-naming.ParameterCase, value: camelBack }

- { key: readability-identifier-naming.ConstantPointerParameterCase, value: CamelCase }
- { key: readability-identifier-naming.ConstantPointerParameterPrefix, value: p }
- { key: readability-identifier-naming.ConstantPointerParameterIgnoredRegexp, value: p }
- { key: readability-identifier-naming.GlobalConstantPointerCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalConstantPointerPrefix, value: g_kp }
- { key: readability-identifier-naming.GlobalPointerCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalPointerPrefix, value: g_p }
- { key: readability-identifier-naming.LocalConstantPointerCase, value: CamelCase }
- { key: readability-identifier-naming.LocalConstantPointerPrefix, value: kp }
- { key: readability-identifier-naming.LocalConstantPointerIgnoredRegexp, value: 'p([A-Z0-9][a-z]*)*' }
- { key: readability-identifier-naming.LocalPointerCase, value: CamelCase }
- { key: readability-identifier-naming.LocalPointerPrefix, value: p }
- { key: readability-identifier-naming.LocalPointerIgnoredRegexp, value: p }
- { key: readability-identifier-naming.PointerParameterCase, value: CamelCase }
- { key: readability-identifier-naming.PointerParameterPrefix, value: p }
- { key: readability-identifier-naming.PointerParameterIgnoredRegexp, value: p }

- { key: readability-identifier-naming.MemberCase, value: camelBack }
- { key: readability-identifier-naming.PrivateMemberPrefix, value: m_ }
- { key: readability-identifier-naming.PrivateMemberIgnoredRegexp, value: m }

- { key: readability-identifier-naming.GlobalVariablePrefix, value: g_ }

- { key: readability-identifier-naming.ClassConstantCase, value: CamelCase }
- { key: readability-identifier-naming.ClassConstantPrefix, value: 'k' }
- { key: readability-identifier-naming.ConstantParameterCase, value: camelBack }
- { key: readability-identifier-naming.ConstantParameterPrefix, value: '' }
- { key: readability-identifier-naming.GlobalConstantCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalConstantPrefix, value: k }
- { key: readability-identifier-naming.LocalConstantCase, value: camelBack }
- { key: readability-identifier-naming.LocalConstantPrefix, value: '' }

- { key: readability-identifier-naming.EnumConstantCase, value: CamelCase }
- { key: readability-identifier-naming.EnumConstantPrefix, value: e }
- { key: readability-identifier-naming.ScopedEnumConstantCase, value: CamelCase }
- { key: readability-identifier-naming.ScopedEnumConstantPrefix, value: e }

- { key: readability-identifier-naming.NamespaceCase, value: lower_case }

- { key: readability-identifier-naming.MacroDefinitionCase, value: UPPER_CASE }
23 changes: 23 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''

---

## Summary

<!-- One paragraph explanation of the feature. -->

## Motivation

<!-- Why are we doing this? What use cases does it support? What is the expected outcome? -->

## Describe alternatives you've considered

<!-- A clear and concise description of the alternative solutions you've considered.-->

## Additional context

<!-- Add any other context or screenshots about the feature request here. -->
43 changes: 43 additions & 0 deletions .github/ISSUE_TEMPLATE/issue_form.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
name: "\U0001F41E Bug"
about: File a bug/issue
title: "[BUG] <title>"
labels: ''

---


### Prerequisites

Put an X between the brackets on this line if you have done all of the following:
* [ ] Checked that your issue isn't already filed

### Current Behavior:
<!-- A concise description of what you're experiencing. -->

### Expected Behavior:
<!-- A concise description of what you expected to happen. -->

### Steps to Reproduce

<!--
Example: steps to reproduce the behavior:
1. In this environment...
1. With this config...
1. Run '...'
1. See error...
-->


### Versions/Environment
<!--
Example:
- OS: Ubuntu 20.04
- Node: 13.14.0
- npm: 7.6.3
-->

### Additional Information
<!--
Links? References? Anything that will give us more context about the issue that you are encountering!
-->
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/build/
/install/
/out/
/output/
/.vs/
/.vscode/
/CMakeUserPresets.json
13 changes: 13 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
hooks:
- id: check-yaml
- id: trailing-whitespace
- id: mixed-line-ending
- id: end-of-file-fixer
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v17.0.4
hooks:
- id: clang-format
exclude: ^3pp/
23 changes: 23 additions & 0 deletions 3pp/boost/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Boost Software License - Version 1.0 - August 17th, 2003

Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:

The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
20 changes: 20 additions & 0 deletions 3pp/boost/align/align.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*
(c) 2014-2015 Glen Joseph Fernandes
<glenjofe -at- gmail.com>
Distributed under the Boost Software
License, Version 1.0.
http://boost.org/LICENSE_1_0.txt
*/
#ifndef BOOST_ALIGN_ALIGN_HPP
#define BOOST_ALIGN_ALIGN_HPP

#include <boost/config.hpp>

#if !defined(BOOST_NO_CXX11_STD_ALIGN)
#include <boost/align/detail/align_cxx11.hpp>
#else
#include <boost/align/detail/align.hpp>
#endif

#endif
Loading

0 comments on commit a2361e4

Please sign in to comment.