]>
git.proxmox.com Git - libgit2.git/blob - src/vector.h
1 #ifndef INCLUDE_vector_h__
2 #define INCLUDE_vector_h__
4 #include "git/common.h"
7 typedef int (*git_vector_cmp
)(const void *, const void *);
8 typedef int (*git_vector_srch
)(const void *, const void *);
10 typedef struct git_vector
{
11 unsigned int _alloc_size
;
13 git_vector_srch _srch
;
20 int git_vector_init(git_vector
*v
, unsigned int initial_size
, git_vector_cmp cmp
, git_vector_srch srch
);
21 void git_vector_free(git_vector
*v
);
22 void git_vector_clear(git_vector
*v
);
24 int git_vector_search(git_vector
*v
, const void *key
);
25 void git_vector_sort(git_vector
*v
);
27 void *git_vector_get(git_vector
*v
, unsigned int position
);
29 int git_vector_insert(git_vector
*v
, void *element
);
30 int git_vector_remove(git_vector
*v
, unsigned int idx
);