-/* pkg_vec.h - the itsy package management system
+/* pkg_vec.h - the opkg package management system
Steven M. Ayer
typedef struct pkg pkg_t;
typedef struct abstract_pkg abstract_pkg_t;
+typedef struct pkg_vec pkg_vec_t;
+typedef struct abstract_pkg_vec abstract_pkg_vec_t;
+
+#include "opkg_conf.h"
struct pkg_vec
{
pkg_t **pkgs;
int len;
};
-typedef struct pkg_vec pkg_vec_t;
struct abstract_pkg_vec
{
abstract_pkg_t **pkgs;
int len;
};
-typedef struct abstract_pkg_vec abstract_pkg_vec_t;
pkg_vec_t * pkg_vec_alloc(void);
/* this one never munges pkg */
void pkg_vec_insert(pkg_vec_t *vec, const pkg_t *pkg);
int pkg_vec_contains(pkg_vec_t *vec, pkg_t *apkg);
-void pkg_vec_sort(pkg_vec_t *vec, int (*compar)(pkg_t *, pkg_t *));
+
+typedef int (*compare_fcn_t)(const void *, const void *);
+void pkg_vec_sort(pkg_vec_t *vec, compare_fcn_t compar);
int pkg_vec_clear_marks(pkg_vec_t *vec);
int pkg_vec_mark_if_matches(pkg_vec_t *vec, const char *pattern);
void abstract_pkg_vec_insert(abstract_pkg_vec_t *vec, abstract_pkg_t *pkg);
abstract_pkg_t * abstract_pkg_vec_get(abstract_pkg_vec_t *vec, int i);
int abstract_pkg_vec_contains(abstract_pkg_vec_t *vec, abstract_pkg_t *apkg);
-void abstract_pkg_vec_sort(pkg_vec_t *vec, int (*compar)(abstract_pkg_t *, abstract_pkg_t *));
+void abstract_pkg_vec_sort(pkg_vec_t *vec, compare_fcn_t compar);
#endif