diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..73686ee --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,16 @@ +version: 2 +jobs: + build_and_test: + docker: + - image: mickare/cmake-clang + steps: + - checkout + - run: cmake -DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - Unix Makefiles" . + - run: cmake --build . --target Containers -- -j 2 + - run: ./Containers +workflows: + version: 2 + build_and_test: + jobs: + - build_and_test + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2ad3cdf --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.idea/* +cmake-build-debug/* + diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..8f46bca --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,22 @@ +cmake_minimum_required(VERSION 3.5.1) +project(Containers C) + +set(CMAKE_C_STANDARD 11) + +add_executable(Containers tst/test.c tst/test.h + src/array.c src/array.h tst/array.c + src/vector.c src/vector.h tst/vector.c + src/deque.c src/deque.h tst/deque.c + src/forward_list.c src/forward_list.h tst/forward_list.c + src/list.c src/list.h tst/list.c + src/set.c src/set.h tst/set.c + src/map.c src/map.h tst/map.c + src/multiset.c src/multiset.h tst/multiset.c + src/multimap.c src/multimap.h tst/multimap.c + src/unordered_set.c src/unordered_set.h tst/unordered_set.c + src/unordered_map.c src/unordered_map.h tst/unordered_map.c + src/unordered_multiset.c src/unordered_multiset.h tst/unordered_multiset.c + src/unordered_multimap.c src/unordered_multimap.h tst/unordered_multimap.c + src/stack.c src/stack.h tst/stack.c + src/queue.c src/queue.h tst/queue.c + src/priority_queue.c src/priority_queue.h tst/priority_queue.c) diff --git a/README.md b/README.md index 5790a8a..b9d0445 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +[![CircleCI](https://circleci.com/gh/bkthomps/Containers/tree/master.svg?style=svg)](https://circleci.com/gh/bkthomps/Containers/tree/master) + # Containers This library provides various containers. Each container has utility functions to manipulate the data it holds. This is an abstraction as to not have to manually manage and reallocate memory.