Fix tabbing
[satune.git] / src / Collections / vector.h
index 3cf00102dd394f924794a20ca79cb8b9901713a4..6c532532c8e39a3f115c61900d7fdfa0bfc894ce 100644 (file)
 #define VECTOR_H
 #include <string.h>
 
-#define VectorDef(name, type)                                                                                                                                                                          \
-       struct Vector ## name {                                                                                                                                                                                         \
-               uint size;                                                                                                                                                                                                                                      \
-               uint capacity;                                                                                                                                                                                                                  \
-               type *array;                                                                                                                                                                                                                     \
-       };                                                                                                                                                                                                                                                                              \
-       typedef struct Vector ## name Vector ## name;                                                                                                   \
-       Vector ## name * allocVector ## name(uint capacity);                                                                    \
-       Vector ## name * allocDefVector ## name();                                                                                                              \
-       Vector ## name * allocVectorArray ## name(uint capacity, type * array); \
-       void pushVector ## name(Vector ## name * vector, type item);                                     \
-       type lastVector ## name(Vector ## name * vector);                                                                                        \
-       void popVector ## name(Vector ## name * vector);                                                                                         \
-       type getVector ## name(Vector ## name * vector, uint index);                                     \
-       void setExpandVector ## name(Vector ## name * vector, uint index, type item);   \
-       void setVector ## name(Vector ## name * vector, uint index, type item); \
-       uint getSizeVector ## name(const Vector ## name * vector);                                                                       \
-       void setSizeVector ## name(Vector ## name * vector, uint size);                          \
-       void deleteVector ## name(Vector ## name * vector);                                                                              \
-       void clearVector ## name(Vector ## name * vector);                                                                               \
-       void deleteVectorArray ## name(Vector ## name * vector);                                                         \
-       type *exposeArray ## name(Vector ## name * vector);                                                                      \
+#define VectorDef(name, type)                                           \
+       struct Vector ## name {                                               \
+               uint size;                                                          \
+               uint capacity;                                                      \
+               type *array;                                                       \
+       };                                                                    \
+       typedef struct Vector ## name Vector ## name;                         \
+       Vector ## name * allocVector ## name(uint capacity);                  \
+       Vector ## name * allocDefVector ## name();                            \
+       Vector ## name * allocVectorArray ## name(uint capacity, type * array); \
+       void pushVector ## name(Vector ## name * vector, type item);           \
+       type lastVector ## name(Vector ## name * vector);                      \
+       void popVector ## name(Vector ## name * vector);                       \
+       type getVector ## name(Vector ## name * vector, uint index);           \
+       void setExpandVector ## name(Vector ## name * vector, uint index, type item); \
+       void setVector ## name(Vector ## name * vector, uint index, type item); \
+       uint getSizeVector ## name(const Vector ## name * vector);                   \
+       void setSizeVector ## name(Vector ## name * vector, uint size);        \
+       void deleteVector ## name(Vector ## name * vector);                    \
+       void clearVector ## name(Vector ## name * vector);                     \
+       void deleteVectorArray ## name(Vector ## name * vector);               \
+       type *exposeArray ## name(Vector ## name * vector);                  \
        void initVector ## name(Vector ## name * vector, uint capacity); \
-       void initDefVector ## name(Vector ## name * vector);                                            \
+       void initDefVector ## name(Vector ## name * vector);            \
        void initVectorArray ## name(Vector ## name * vector, uint capacity, type * array);
 
-#define VectorImpl(name, type, defcap)                                                                                                                                 \
-       Vector ## name * allocDefVector ## name() {                                                                                                             \
-               return allocVector ## name(defcap);                                                                                                                                     \
-       }                                                                                                                                                                                                                                                                                       \
-       Vector ## name * allocVector ## name(uint capacity) {                                                                   \
-               Vector ## name * tmp = (Vector ## name *)ourmalloc(sizeof(Vector ## name));      \
-               tmp->size = 0;                                                                                                                                                                                                                  \
-               tmp->capacity = capacity;                                                                                                                                                                               \
-               tmp->array = (type *) ourmalloc(sizeof(type) * capacity);                                               \
-               return tmp;                                                                                                                                                                                                                                     \
-       }                                                                                                                                                                                                                                                                                       \
-       Vector ## name * allocVectorArray ## name(uint capacity, type * array)  {       \
-               Vector ## name * tmp = allocVector ## name(capacity);                                                           \
-               tmp->size = capacity;                                                                                                                                                                                                   \
-               memcpy(tmp->array, array, capacity * sizeof(type));                                                                     \
-               return tmp;                                                                                                                                                                                                                                     \
-       }                                                                                                                                                                                                                                                                                       \
-       void popVector ## name(Vector ## name * vector) {                                                                                        \
-               vector->size--;                                                                                                                                                                                                                 \
-       }                                                                                                                                                                                                                                                                                       \
-       type lastVector ## name(Vector ## name * vector) {                                                                               \
-               return vector->array[vector->size - 1];                                                                                                                         \
-       }                                                                                                                                                                                                                                                                                       \
-       void setSizeVector ## name(Vector ## name * vector, uint size) {                         \
-               if (size <= vector->size) {                                                                                                                                                                     \
-                       vector->size = size;                                                                                                                                                                                            \
-                       return;                                                                                                                                                                                                                                         \
-               } else if (size > vector->capacity) {                                                                                                                           \
-                       vector->array = (type *)ourrealloc(vector->array, size * sizeof(type)); \
-                       vector->capacity = size;                                                                                                                                                                                \
-               }                                                                                                                                                                                                                                                                               \
+#define VectorImpl(name, type, defcap)                                  \
+       Vector ## name * allocDefVector ## name() {                           \
+               return allocVector ## name(defcap);                                 \
+       }                                                                     \
+       Vector ## name * allocVector ## name(uint capacity) {                 \
+               Vector ## name * tmp = (Vector ## name *)ourmalloc(sizeof(Vector ## name));  \
+               tmp->size = 0;                                                      \
+               tmp->capacity = capacity;                                           \
+               tmp->array = (type *) ourmalloc(sizeof(type) * capacity);           \
+               return tmp;                                                         \
+       }                                                                     \
+       Vector ## name * allocVectorArray ## name(uint capacity, type * array)  { \
+               Vector ## name * tmp = allocVector ## name(capacity);               \
+               tmp->size = capacity;                                                 \
+               memcpy(tmp->array, array, capacity * sizeof(type));                 \
+               return tmp;                                                         \
+       }                                                                     \
+       void popVector ## name(Vector ## name * vector) {                      \
+               vector->size--;                                                     \
+       }                                                                     \
+       type lastVector ## name(Vector ## name * vector) {                     \
+               return vector->array[vector->size - 1];                               \
+       }                                                                     \
+       void setSizeVector ## name(Vector ## name * vector, uint size) {       \
+               if (size <= vector->size) {                                         \
+                       vector->size = size;                                                \
+                       return;                                                           \
+               } else if (size > vector->capacity) {                               \
+                       vector->array = (type *)ourrealloc(vector->array, size * sizeof(type)); \
+                       vector->capacity = size;                                            \
+               }                                                                   \
                bzero(&vector->array[vector->size], (size - vector->size) * sizeof(type)); \
-               vector->size = size;                                                                                                                                                                                                    \
-       }                                                                                                                                                                                                                                                                                       \
-       void pushVector ## name(Vector ## name * vector, type item) {                                    \
-               if (vector->size >= vector->capacity) {                                                                                                                 \
-                       uint newcap = vector->capacity << 1;                                                                                                                            \
-                       vector->array = (type *)ourrealloc(vector->array, newcap * sizeof(type));       \
-                       vector->capacity = newcap;                                                                                                                                                                      \
-               }                                                                                                                                                                                                                                                                               \
-               vector->array[vector->size++] = item;                                                                                                                           \
-       }                                                                                                                                                                                                                                                                                       \
-       type getVector ## name(Vector ## name * vector, uint index) {                                   \
-               return vector->array[index];                                                                                                                                                            \
-       }                                                                                                                                                                                                                                                                                       \
+               vector->size = size;                                                  \
+       }                                                                     \
+       void pushVector ## name(Vector ## name * vector, type item) {          \
+               if (vector->size >= vector->capacity) {                             \
+                       uint newcap = vector->capacity << 1;                                \
+                       vector->array = (type *)ourrealloc(vector->array, newcap * sizeof(type)); \
+                       vector->capacity = newcap;                                          \
+               }                                                                   \
+               vector->array[vector->size++] = item;                               \
+       }                                                                     \
+       type getVector ## name(Vector ## name * vector, uint index) {         \
+               return vector->array[index];                                        \
+       }                                                                     \
        void setExpandVector ## name(Vector ## name * vector, uint index, type item) { \
-               if (index >= vector->size)                                                                                                                                                                              \
-                       setSizeVector ## name(vector, index + 1);                                                                                                       \
-               setVector ## name(vector, index, item);                                                                                                                 \
-       }                                                                                                                                                                                                                                                                                       \
+               if (index >= vector->size)                                            \
+                       setSizeVector ## name(vector, index + 1);                         \
+               setVector ## name(vector, index, item);                             \
+       }                                                                     \
        void setVector ## name(Vector ## name * vector, uint index, type item) { \
-               vector->array[index] = item;                                                                                                                                                                    \
-       }                                                                                                                                                                                                                                                                                       \
-       uint getSizeVector ## name(const Vector ## name * vector) {                                             \
-               return vector->size;                                                                                                                                                                                            \
-       }                                                                                                                                                                                                                                                                                       \
-       void deleteVector ## name(Vector ## name * vector) {                                                                             \
-               ourfree(vector->array);                                                                                                                                                                                 \
-               ourfree(vector);                                                                                                                                                                                                                \
-       }                                                                                                                                                                                                                                                                                       \
-       void clearVector ## name(Vector ## name * vector) {                                                                                     \
-               vector->size = 0;                                                                                                                                                                                                                       \
-       }                                                                                                                                                                                                                                                                                       \
-       type *exposeArray ## name(Vector ## name * vector) {                                                             \
-               return vector->array;                                                                                                                                                                                           \
-       }                                                                                                                                                                                                                                                                                       \
-       void deleteVectorArray ## name(Vector ## name * vector) {                                                        \
-               ourfree(vector->array);                                                                                                                                                                                 \
-       }                                                                                                                                                                                                                                                                                       \
-       void initVector ## name(Vector ## name * vector, uint capacity) {       \
-               vector->size = 0;                                                                                                                                                                                                                        \
-               vector->capacity = capacity;                                                                                                                                                                                    \
-               vector->array = (type *) ourmalloc(sizeof(type) * capacity);                            \
-       }                                                                                                                                                                                                                                                                                       \
-       void initDefVector ## name(Vector ## name * vector) {                                   \
-               initVector ## name(vector, defcap);                                                                                                     \
-       }                                                                                                                                                                                                                                                                                       \
-       void initVectorArray ## name(Vector ## name * vector, uint capacity, type * array) {    \
-               initVector ## name(vector, capacity);                                                                                                    \
-               vector->size = capacity;                                                                                                                                                                                        \
-               memcpy(vector->array, array, capacity * sizeof(type));  \
+               vector->array[index] = item;                                          \
+       }                                                                     \
+       uint getSizeVector ## name(const Vector ## name * vector) {           \
+               return vector->size;                                                \
+       }                                                                     \
+       void deleteVector ## name(Vector ## name * vector) {                     \
+               ourfree(vector->array);                                             \
+               ourfree(vector);                                                    \
+       }                                                                     \
+       void clearVector ## name(Vector ## name * vector) {                     \
+               vector->size = 0;                                                     \
+       }                                                                     \
+       type *exposeArray ## name(Vector ## name * vector) {                 \
+               return vector->array;                                               \
+       }                                                                     \
+       void deleteVectorArray ## name(Vector ## name * vector) {              \
+               ourfree(vector->array);                                             \
+       }                                                                     \
+       void initVector ## name(Vector ## name * vector, uint capacity) { \
+               vector->size = 0;                                                      \
+               vector->capacity = capacity;                                              \
+               vector->array = (type *) ourmalloc(sizeof(type) * capacity);        \
+       }                                                                     \
+       void initDefVector ## name(Vector ## name * vector) {         \
+               initVector ## name(vector, defcap);                         \
+       }                                                                     \
+       void initVectorArray ## name(Vector ## name * vector, uint capacity, type * array) {  \
+               initVector ## name(vector, capacity);                          \
+               vector->size = capacity;                                              \
+               memcpy(vector->array, array, capacity * sizeof(type));  \
        }
 #endif