- first step in getting rid of dependency pointers:
[platform/upstream/libsolv.git] / src / solvable.h
1 /*
2  * solvable.h
3  * 
4  * A solvable represents an object with name-epoch:version-release.arch and dependencies
5  */
6
7 #ifndef SOLVABLE_H
8 #define SOLVABLE_H
9
10 #include "pooltypes.h"
11 #include "source.h"
12
13 typedef struct _Solvable {
14   Id name;
15   Id arch;
16   Id evr;                       /* epoch:version-release */
17
18   Source *source;               /* source we belong to */
19
20   /* dependencies are pointers into idarray of source */
21   Id *provides;                 /* terminated with Id 0 */
22   Id *obsoletes;
23   Id *conflicts;
24
25   Id *requires;
26   Id *recommends;
27   Id *suggests;
28
29   Id *supplements;
30   Id *enhances;
31
32   Id *freshens;
33 } Solvable;
34
35 #endif /* SOLVABLE_H */