diff --git a/.clang-format b/.clang-format index 8d5fb049..c5fc5eb7 100644 --- a/.clang-format +++ b/.clang-format @@ -1,32 +1,26 @@ -BasedOnStyle: LLVM IndentWidth: 4 -ColumnLimit: 127 - -AllowShortFunctionsOnASingleLine: Empty -AllowShortIfStatementsOnASingleLine: WithoutElse -AllowShortCaseLabelsOnASingleLine: true -AllowShortEnumsOnASingleLine: false - +Language: Cpp +UseTab: Never +ColumnLimit: 120 +PointerAlignment: Left +BreakBeforeBraces: Attach +SpaceAfterCStyleCast: false +Cpp11BracedListStyle: true IndentCaseLabels: true -IndentExternBlock: Indent -IndentPPDirectives: BeforeHash -NamespaceIndentation: All -IndentAccessModifiers: false -AccessModifierOffset: -4 - -AlignConsecutiveAssignments: Consecutive -AlignEscapedNewlines: DontAlign -AlignTrailingComments: Leave - -BreakConstructorInitializers: AfterColon - -PackConstructorInitializers: Never - -SpaceAfterCStyleCast: true -SpaceBeforeParens: Custom -SpaceBeforeParensOptions: - AfterPlacementOperator: false - -BreakBeforeBraces: Custom -BraceWrapping: - AfterControlStatement: MultiLine +IndentPPDirectives: None +BinPackArguments: true +BinPackParameters: true +AlignAfterOpenBracket: Align +AlignOperands: true +BreakBeforeTernaryOperators: true +BreakBeforeBinaryOperators: None +AllowShortBlocksOnASingleLine: true +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: true +AllowShortEnumsOnASingleLine: false +AlignEscapedNewlines: Left +AlignTrailingComments: false +SortIncludes: true +InsertBraces: true diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..e24acd17 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,31 @@ +name: CI +on: + push: + branches: + - main + pull_request: +jobs: + lint: + name: Linting/style checks + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.13' + check-latest: true + + - name: Install pre-commit + run: pip install pre-commit + + - name: Cache pre-commit hooks + uses: actions/cache@v4 + with: + path: ~/.cache/pre-commit/ + # Invalidate the cache if the pre-commit config changes or the Python version changes + key: pre-commit-cache|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml') }} + + - name: Run pre-commit checks + run: pre-commit run --all-files --verbose diff --git a/libs/c/include/string.h b/libs/c/include/string.h index 6c1c86a7..f34ed844 100644 --- a/libs/c/include/string.h +++ b/libs/c/include/string.h @@ -3,13 +3,13 @@ typedef unsigned int size_t; -size_t strlen(const char *str); -char *strcpy(char *dest, const char *src); -char *strncpy(char *dest, const char *src, size_t num); -char *strcat(char *dest, const char *src); -int strcmp(char *str1, char *str2); -int strncmp(char *str1, char *str2, size_t num); -const char *strchr(const char *str, char ch); -const char *strstr(const char *str1, const char *str2); +size_t strlen(const char* str); +char* strcpy(char* dest, const char* src); +char* strncpy(char* dest, const char* src, size_t num); +char* strcat(char* dest, const char* src); +int strcmp(char* str1, char* str2); +int strncmp(char* str1, char* str2, size_t num); +const char* strchr(const char* str, char ch); +const char* strstr(const char* str1, const char* str2); #endif diff --git a/libs/cpp/include/global_destructor_chain.h b/libs/cpp/include/global_destructor_chain.h index c5043126..3675ef10 100644 --- a/libs/cpp/include/global_destructor_chain.h +++ b/libs/cpp/include/global_destructor_chain.h @@ -1,10 +1,10 @@ #pragma once typedef struct DestructorChain { - /* 0 */ struct DestructorChain *next; - /* 4 */ void *destructor; - /* 8 */ void *object; + /* 0 */ struct DestructorChain* next; + /* 4 */ void* destructor; + /* 8 */ void* object; /* c */ } DestructorChain; -void *__register_global_object(void *object, void *destructor, DestructorChain *link); +void* __register_global_object(void* object, void* destructor, DestructorChain* link); diff --git a/libs/cpp/src/__register_global_object.c b/libs/cpp/src/__register_global_object.c index 7d1e188f..a1f884a2 100644 --- a/libs/cpp/src/__register_global_object.c +++ b/libs/cpp/src/__register_global_object.c @@ -1,13 +1,13 @@ #include "global_destructor_chain.h" -#define CALL_DTOR(dtor, obj) (((void (*)(void *, int))(dtor))((obj), -1)) +#define CALL_DTOR(dtor, obj) (((void (*)(void*, int))(dtor))((obj), -1)) -DestructorChain *__global_destructor_chain; +DestructorChain* __global_destructor_chain; -void *__register_global_object(void *object, void *destructor, DestructorChain *link) { - link->next = __global_destructor_chain; +void* __register_global_object(void* object, void* destructor, DestructorChain* link) { + link->next = __global_destructor_chain; link->destructor = destructor; - link->object = object; + link->object = object; __global_destructor_chain = link; return object;