Browse Source

Made darr in DArray_at const. Added ScufContResult_to_str().

Aaro Saila 1 tháng trước cách đây
mục cha
commit
ea847feb57
3 tập tin đã thay đổi với 22 bổ sung và 3 xóa
  1. 1 1
      include/scufcont/DArray.h
  2. 11 2
      include/scufcont/scufcont.h
  3. 10 0
      src/scufcont.c

+ 1 - 1
include/scufcont/DArray.h

@@ -115,7 +115,7 @@
 
 // SCDARRAY_PUSH_BACK_MULTIPLE(int, SCDArray_int, SCDArray_int_push_back_multiple)
 
-#define SCDARRAY_AT_SIG(type, type_name, func_name) type* func_name(type_name* darr, const size_t i)
+#define SCDARRAY_AT_SIG(type, type_name, func_name) type* func_name(const type_name* const darr, const size_t i)
 
 // SCDARRAY_PUSH_BACK(int, SCDArray_int, SCDArray_int_push_back);
 

+ 11 - 2
include/scufcont/scufcont.h

@@ -1,11 +1,20 @@
 #ifndef SCUFCONT_H_
 #define SCUFCONT_H_
 
+#define SCUFCONT_RESULT_X(X) \
+    X(SCUFCONT_SUCCESS) \
+    X(SCUFCONT_OUT_OF_MEMORY)
+
+#define X(val) val,
+
 typedef enum {
-    SCUFCONT_SUCCESS,
-    SCUFCONT_OUT_OF_MEMORY
+    SCUFCONT_RESULT_X(X)
 } ScufContResult;
 
+#undef X
+
 extern const char* SCUFCONT_VERSION;
 
+const char* ScufContResult_to_str(const ScufContResult res);
+
 #endif // SCUFCONT_H_

+ 10 - 0
src/scufcont.c

@@ -1,3 +1,13 @@
 #include "scufcont/scufcont.h"
 
 const char* SCUFCONT_VERSION = _SCUFCONT_VERSION;
+
+const char* ScufContResult_to_str(const ScufContResult res) {
+#define ScufContResult_to_str_case(val) \
+    case val: \
+        return #val;
+
+    switch (res) {
+    SCUFCONT_RESULT_X(ScufContResult_to_str_case)
+    }
+}