Display broken packages when depedencies are unsolvable
[mspang/inapt.git] / inapt.h
diff --git a/inapt.h b/inapt.h
index c00f44e..4659b76 100644 (file)
--- a/inapt.h
+++ b/inapt.h
@@ -2,18 +2,32 @@
 #include <apt-pkg/pkgcache.h>
 
 struct inapt_conditional;
+struct inapt_package;
 
 struct inapt_action {
-    const char *package;
-    enum action_t { INSTALL, REMOVE, UNSET } action;
+    enum action_t { INSTALL, REMOVE } action;
+    std::vector<std::string> predicates;
+    std::vector<inapt_package *> packages;
+};
+
+struct inapt_package {
+    enum inapt_action::action_t action;
+    std::vector<std::string> alternates;
+    std::vector<std::string> predicates;
+    pkgCache::PkgIterator pkg;
     const char *filename;
     int linenum;
-    pkgCache::PkgIterator pkg;
+};
+
+struct inapt_profiles {
+    std::vector<std::string> predicates;
+    std::vector<std::string> profiles;
 };
 
 struct inapt_block {
     std::vector<inapt_action *> actions;
     std::vector<inapt_conditional *> children;
+    std::vector<inapt_profiles *> profiles;
 };
 
 struct inapt_conditional {