- use FOR_REPODATAS macro
[platform/upstream/libsolv.git] / src / solvable.h
index aaecd71..583f345 100644 (file)
@@ -1,32 +1,43 @@
 /*
+ * Copyright (c) 2007, Novell Inc.
+ *
+ * This program is licensed under the BSD license, read LICENSE.BSD
+ * for further information
+ */
+
+/*
  * solvable.h
  * 
  * A solvable represents an object with name-epoch:version-release.arch and dependencies
  */
 
-#ifndef SOLVABLE_H
-#define SOLVABLE_H
+#ifndef LIBSOLV_SOLVABLE_H
+#define LIBSOLV_SOLVABLE_H
 
 #include "pooltypes.h"
 
+struct _Repo;
+
 typedef struct _Solvable {
   Id name;
   Id arch;
-  Id evr;
+  Id evr;                      /* epoch:version-release */
+  Id vendor;
+
+  struct _Repo *repo;          /* repo we belong to */
 
-  // dependencies are pointers into idarray of source the solvable originates from
-  Id *provides;                        // terminated with Id 0
-  Id *obsoletes;
-  Id *conflicts;
+  /* dependencies are offsets into idarray of repo */
+  Offset provides;                     /* terminated with Id 0 */
+  Offset obsoletes;
+  Offset conflicts;
 
-  Id *requires;
-  Id *recommends;
-  Id *suggests;
+  Offset requires;
+  Offset recommends;
+  Offset suggests;
 
-  Id *supplements;
-  Id *enhances;
+  Offset supplements;
+  Offset enhances;
 
-  Id *freshens;
 } Solvable;
 
-#endif /* SOLVABLE_H */
+#endif /* LIBSOLV_SOLVABLE_H */