commit 870a752df629689603f7021059d56cbfb69c94c2
parent f38b7e928c8c9e888d46aab8c6685297c6690c5a
Author: Yersa Nordman <yersa@finwo.nl>
Date: Thu, 2 Mar 2023 20:25:04 +0100
Initialized main structure
Diffstat:
7 files changed, 101 insertions(+), 0 deletions(-)
diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml
@@ -0,0 +1,21 @@
+name: CI
+
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+ - main
+
+jobs:
+
+ test:
+ name: Test
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: finwo/dep@edge
+ - run : dep install
+ - run : make clean
+ - run : make
+ - run : ./test
diff --git a/.gitignore b/.gitignore
@@ -0,0 +1,3 @@
+/lib/
+*.o
+/test
diff --git a/Makefile b/Makefile
@@ -0,0 +1,19 @@
+SRC:=
+SRC+=$(wildcard src/*.c)
+SRC+=test.c
+
+override CFLAGS?=-Wall -g -O2
+
+include lib/.dep/config.mk
+
+override CFLAGS+=$(INCLUDES)
+
+OBJ=$(SRC:.c=.o)
+
+test: $(OBJ)
+ $(CC) $(CFLAGS) $(SRC) -o $@
+
+.PHONY: clean
+clean:
+ rm -f $(OBJ)
+ rm -f test
diff --git a/package.ini b/package.ini
@@ -1,3 +1,5 @@
+[dependencies]
+finwo/assert=https://github.com/finwo/c-assert/archive/refs/tags/edge.tar.gz
[package]
deps=lib
name=finwo/mindex
diff --git a/src/mindex.c b/src/mindex.c
@@ -0,0 +1,33 @@
+#include "mindex.h"
+
+struct mindex_t * mindex_init(int (*compare)(const void *a, const void *b, void *udata), void *udata) {
+ struct mindex_t *mindex = malloc(sizeof(struct mindex_t));
+ mindex->compare = compare;
+ mindex->items = NULL;
+ mindex->length = 0;
+ return NULL;
+}
+
+void mindex_set(struct mindex_t *mindex, void *item) {
+
+}
+
+void * mindex_get(struct mindex_t *mindex, void *pattern) {
+ return NULL;
+}
+
+void * mindex_rand(struct mindex_t *mindex) {
+ return NULL;
+}
+
+void mindex_delete(struct mindex_t *mindex, void *item) {
+
+}
+
+size_t mindex_length(struct mindex_t *mindex) {
+ return 0;
+}
+
+void mindex_free(struct mindex_t *mindex) {
+
+}
diff --git a/src/mindex.h b/src/mindex.h
@@ -0,0 +1,20 @@
+#ifndef __FINWO_MINDEX_H__
+#define __FINWO_MINDEX_H__
+
+#include <stdlib.h>
+
+struct mindex_t {
+ int (*compare)(const void *a, const void *b, void *udata);
+ size_t length;
+ void **items;
+};
+
+struct mindex_t * mindex_init(int (*compare)(const void *a, const void *b, void *udata), void *udata);
+void mindex_set(struct mindex_t *mindex, void *item);
+void * mindex_get(struct mindex_t *mindex, void *pattern);
+void * mindex_rand(struct mindex_t *mindex);
+void mindex_delete(struct mindex_t *mindex, void *item);
+size_t mindex_length(struct mindex_t *mindex);
+void mindex_free(struct mindex_t *mindex);
+
+#endif // __FINWO_MINDEX_H__
diff --git a/test.c b/test.c
@@ -0,0 +1,3 @@
+int main() {
+ return 42;
+}