#ifndef PKGIT_PKG_H #define PKGIT_PKG_H #include "str.h" struct package_t; typedef bool (*package_hook_cb_t)(struct package_t *self); typedef str (*package_version_cb_t)(struct package_t *self); typedef struct package_t { str name, version, url, src; unsigned int dep_count; bool is_local; package_hook_cb_t setup, build, install, rem, on_update, fetch_sources; package_version_cb_t fetch_latest_version; } package_t; bool setup(package_t *self), build(package_t *self), install(package_t *self), rem(package_t *self), on_update(package_t *self), fetch_sources(package_t *self); str fetch_latest_version(package_t *self); #endif