aboutsummaryrefslogtreecommitdiff
path: root/Vector.h
blob: ae82c2340bd53bdd039eb769ae893b1e303ebe53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#ifndef _VECTOR
#define _VECTOR

#include "Types.h"
#include "MemoryManager.h"

typedef void* Vector;

Vector V_new(MemoryManager *mm, usize element_size, usize length);
usize  V_length(Vector arr);
usize  V_count(Vector arr);
void*  V_top(Vector arr);
Result V_push(Vector *arr, void *pointer_to_value);
Result V_pushp(Vector* *arr, void *value);
Result V_pop(Vector *arr);
Result V_free(Vector *arr);

#endif /* _VECTOR */