Namespace list functions
This commit is contained in:
		| @@ -17,12 +17,12 @@ | ||||
|     u64 count;                                                                 \ | ||||
|   } LIST_TYPE_NAME(T) | ||||
|  | ||||
| #define create_list(T)                                                         \ | ||||
| #define list_create(T)                                                         \ | ||||
|   (LIST_TYPE_NAME(T) *)_create_list(sizeof(T), BASE_LIST_CAPACITY) | ||||
| #define create_list_with_capacity(T, CAPACITY)                                 \ | ||||
| #define list_create_with_capacity(T, CAPACITY)                                 \ | ||||
|   (LIST_TYPE_NAME(T) *)_create_list(sizeof(T), CAPACITY) | ||||
|  | ||||
| #define destroy_list(T, LP)                                                    \ | ||||
| #define list_destroy(T, LP)                                                    \ | ||||
|   do {                                                                         \ | ||||
|     munmap(LP->items, sizeof(T) * LP->capacity);                               \ | ||||
|     LP->items = NULL;                                                          \ | ||||
| @@ -31,7 +31,7 @@ | ||||
|     munmap(LP, sizeof(LIST_TYPE_NAME(T)));                                     \ | ||||
|   } while (0) | ||||
|  | ||||
| #define append(T, LP, ITEM)                                                    \ | ||||
| #define list_append(T, LP, ITEM)                                               \ | ||||
|   do {                                                                         \ | ||||
|     if (LP->count + 1 >= LP->capacity) {                                       \ | ||||
|       u64 new_capacity = LP->capacity * 2;                                     \ | ||||
| @@ -50,7 +50,7 @@ | ||||
|     LP->items[(LP->count)++] = ITEM;                                           \ | ||||
|   } while (0) | ||||
|  | ||||
| #define get(LP, IDX) LP->items[IDX] | ||||
| #define list_get(LP, IDX) LP->items[IDX] | ||||
|  | ||||
| MAKE_LIST_TYPE(void); | ||||
|  | ||||
|   | ||||
| @@ -28,7 +28,7 @@ void draw_line(window_t *wnd, line_t line, colour_t colour) { | ||||
|     } | ||||
|  | ||||
|     for (i32 x = x0; x <= x1; ++x) { | ||||
|       set_pixel(wnd, x, (i32)(get(values, x - x0)), colour); | ||||
|       set_pixel(wnd, x, (i32)(list_get(values, x - x0)), colour); | ||||
|     } | ||||
|   } else { | ||||
|     if (line.p1.y < line.p0.y) { | ||||
| @@ -41,25 +41,25 @@ void draw_line(window_t *wnd, line_t line, colour_t colour) { | ||||
|     } | ||||
|  | ||||
|     for (i32 y = y0; y <= y1; ++y) { | ||||
|       set_pixel(wnd, (i32)(get(values, y - y0)), y, colour); | ||||
|       set_pixel(wnd, (i32)(list_get(values, y - y0)), y, colour); | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   destroy_list(f32, values); | ||||
|   list_destroy(f32, values); | ||||
| } | ||||
|  | ||||
| internal list_float_t *interpolate(i32 i0, f32 d0, i32 i1, f32 d1) { | ||||
|   list_float_t *values; | ||||
|   if (i0 == i1) { | ||||
|     values = create_list_with_capacity(f32, 20); | ||||
|     values = list_create_with_capacity(f32, 20); | ||||
|     if (values) { | ||||
|       append(f32, values, d0); | ||||
|       list_append(f32, values, d0); | ||||
|     } | ||||
|  | ||||
|     return values; | ||||
|   } | ||||
|  | ||||
|   values = create_list(f32); | ||||
|   values = list_create(f32); | ||||
|   if (!values) { | ||||
|     return NULL; | ||||
|   } | ||||
| @@ -68,7 +68,7 @@ internal list_float_t *interpolate(i32 i0, f32 d0, i32 i1, f32 d1) { | ||||
|   f32 d = d0; | ||||
|  | ||||
|   for (i32 i = i0; i <= i1; ++i) { | ||||
|     append(f32, values, d); | ||||
|     list_append(f32, values, d); | ||||
|     d += a; | ||||
|   } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user