diff --git a/.clang-tidy b/.clang-tidy
index 4e7c235..6bac0f1 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -11,3 +11,20 @@ performance-*,
portability-*,
readability-*'
FormatStyle: file
+CheckOptions:
+ concurrency-mt-unsafe.FunctionSet: posix
+ # See https://google.github.io/styleguide/cppguide.html
+ readability-identifier-naming.ConstantCase: CamelCase
+ readability-identifier-naming.ConstantPrefix: k
+ readability-identifier-naming.ConstantMemberCase: CamelCase
+ readability-identifier-naming.ConstantMemberPrefix: k
+ readability-identifier-naming.ConstantParameterCase: lower_case
+ readability-identifier-naming.EnumCase: CamelCase
+ readability-identifier-naming.EnumConstantCase: CamelCase
+ readability-identifier-naming.EnumConstantPrefix: k
+ readability-identifier-naming.FunctionCase: CamelCase
+ readability-identifier-naming.MemberCase: lower_case
+ readability-identifier-naming.ParameterCase: lower_case
+ readability-identifier-naming.StructCase: CamelCase
+ readability-identifier-naming.TypedefCase: CamelCase
+ readability-identifier-naming.VariableCase: lower_case
diff --git a/.editorconfig b/.editorconfig
index 9b9f51f..bd339a8 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -2,8 +2,13 @@ root = true
[*]
charset = utf-8
+end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
+[*.{h,c}]
+indent_style = space
+indent_size = 2
+
[*.md]
trim_trailing_whitespace = false
diff --git a/.gitignore b/.gitignore
index b5dc14a..56f3714 100644
--- a/.gitignore
+++ b/.gitignore
@@ -175,3 +175,7 @@ fabric.properties
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
+
+
+# Added by the developer
+!/.vscode/c_cpp_properties.json
diff --git a/.idea/cmake.xml b/.idea/cmake.xml
new file mode 100644
index 0000000..e66f78a
--- /dev/null
+++ b/.idea/cmake.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
index aa4c426..251c8b6 100644
--- a/.idea/inspectionProfiles/Project_Default.xml
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -21,6 +21,7 @@
+
@@ -29,6 +30,7 @@
+
@@ -76,7 +78,6 @@
-
@@ -97,7 +98,6 @@
-
diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json
new file mode 100644
index 0000000..e6fbd86
--- /dev/null
+++ b/.vscode/c_cpp_properties.json
@@ -0,0 +1,9 @@
+{
+ "configurations": [
+ {
+ "name": "CMake",
+ "configurationProvider": "ms-vscode.cmake-tools"
+ }
+ ],
+ "version": 4
+}
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
new file mode 100644
index 0000000..53823b5
--- /dev/null
+++ b/.vscode/extensions.json
@@ -0,0 +1,6 @@
+{
+ "recommendations": [
+ "ms-vscode.cpptools-extension-pack",
+ "editorconfig.editorconfig"
+ ]
+}
diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..059faa2
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,10 @@
+{
+ "C_Cpp.codeAnalysis.clangTidy.enabled": true,
+ "cmake.buildDirectory": "${workspaceFolder}/cmake-build-debug/",
+ "cmake.parallelJobs": 10,
+ "files.associations": {
+ "*.c": "c",
+ "*.h": "c",
+ "*.cc": "cpp"
+ }
+}
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
new file mode 100644
index 0000000..5339177
--- /dev/null
+++ b/.vscode/tasks.json
@@ -0,0 +1,16 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "type": "cmake",
+ "label": "CMake: build",
+ "command": "build",
+ "targets": [
+ "singly_linked_list"
+ ],
+ "group": "build",
+ "problemMatcher": [],
+ "detail": "CMake template build task"
+ }
+ ]
+}
diff --git a/CMakeLists.txt b/CMakeLists.txt
index adc8c0b..6e3c1bd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,5 +5,5 @@ set(CMAKE_C_STANDARD 23)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
-file(GLOB SRC_FILES src/*.c src/*.h)
-add_executable(${PROJECT_NAME} ${SRC_FILES})
+add_executable(${PROJECT_NAME} src/main.c)
+target_include_directories(${PROJECT_NAME} PRIVATE src/)