Blame lib/rpmds_internal.h

2ff057
#ifndef _RPMDS_INTERNAL_H
2ff057
#define _RPMDS_INTERNAL_H
2ff057
2ff057
#include <rpm/rpmds.h>
2ff057
2ff057
#ifdef __cplusplus
2ff057
extern "C" {
2ff057
#endif
2ff057
2ff057
/** \ingroup rpmds
2ff057
 * Swiss army knife dependency matching function.
2ff057
 * @param pool		string pool (or NULL for private pool)
2ff057
 * @param h		header
2ff057
 * @param prix		index to provides (or -1 or any)
2ff057
 * @param req		dependency set
2ff057
 * @param selfevr	only look at package EVR?
2ff057
 * @param nopromote	dont promote epoch in comparison?
2ff057
 * @return		1 if dependency overlaps, 0 otherwise
2ff057
 */
2ff057
RPM_GNUC_INTERNAL
2ff057
int rpmdsMatches(rpmstrPool pool, Header h, int prix,
2ff057
		 rpmds req, int selfevr, int nopromote);
2ff057
2ff057
/** \ingroup rpmds
2ff057
 * Notify of results of dependency match.
2ff057
 * @param ds		dependency set
2ff057
 * @param where		where dependency was resolved (or NULL)
2ff057
 * @param rc		0 == YES, otherwise NO
2ff057
 */
2ff057
RPM_GNUC_INTERNAL
2ff057
void rpmdsNotify(rpmds ds, const char * where, int rc);
2ff057
2ff057
/** \ingroup rpmds
2ff057
 * Return current dependency name pool id.
2ff057
 * @param ds            dependency set
2ff057
 * @return              current dependency name id, 0 on invalid
2ff057
 */
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmsid rpmdsNId(rpmds ds);
2ff057
2ff057
/** \ingroup rpmds
2ff057
 * Return current dependency epoch-version-release pool id.
2ff057
 * @param ds            dependency set
2ff057
 * @return              current dependency EVR id, 0 on invalid
2ff057
 */
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmsid rpmdsEVRId(rpmds ds);
2ff057
2ff057
/** \ingroup rpmds
2ff057
 * Return dependency set string pool handle
2ff057
 * @param ds		dependency set
2ff057
 * @return		string pool handle (weak reference)
2ff057
 */
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmstrPool rpmdsPool(rpmds ds);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmsid rpmdsNIdIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmsid rpmdsEVRIdIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
const char * rpmdsNIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
const char * rpmdsEVRIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmsenseFlags rpmdsFlagsIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
int rpmdsTiIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
rpm_color_t rpmdsColorIndex(rpmds ds, int i);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
int rpmdsCompareIndex(rpmds A, int aix, rpmds B, int bix);
2ff057
2ff057
/** \ingroup rpmds
2ff057
 * Filter dependency set and return new dependency set containing only items
2ff057
 * with given trigger index.
2ff057
 * @param ds		dependency set
2ff057
 * @param ti		trigger index
2ff057
 * @return		new filtered dependency set
2ff057
 */
2ff057
RPM_GNUC_INTERNAL
2ff057
rpmds rpmdsFilterTi(rpmds ds, int ti);
2ff057
#ifdef __cplusplus
2ff057
}
2ff057
#endif
2ff057
2ff057
#endif /* _RPMDS_INTERNAL_H */