aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2011-06-11 19:06:47 +0100
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2011-06-11 19:13:23 +0100
commit91cb1ee0418b3a6d90643cc51d59f7204f5b4995 (patch)
tree241ae3cb2b262a263f56494787ce4eff7f05f63c
parent26a2fd96e1360ec5432aa5958b42aa72034a8512 (diff)
downloadpaludis-91cb1ee0418b3a6d90643cc51d59f7204f5b4995.tar.gz
paludis-91cb1ee0418b3a6d90643cc51d59f7204f5b4995.tar.xz
Track whether :slot deps are from a :=
-rw-r--r--paludis/elike_slot_requirement.cc8
-rw-r--r--paludis/elike_slot_requirement.hh3
-rw-r--r--paludis/slot_requirement.hh1
-rw-r--r--paludis/user_dep_spec.cc6
-rw-r--r--paludis/user_dep_spec.hh1
5 files changed, 17 insertions, 2 deletions
diff --git a/paludis/elike_slot_requirement.cc b/paludis/elike_slot_requirement.cc
index ea52fe4..04b2f21 100644
--- a/paludis/elike_slot_requirement.cc
+++ b/paludis/elike_slot_requirement.cc
@@ -1,7 +1,7 @@
/* vim: set sw=4 sts=4 et foldmethod=syntax : */
/*
- * Copyright (c) 2008 Ciaran McCreesh
+ * Copyright (c) 2008, 2011 Ciaran McCreesh
*
* This file is part of the Paludis package manager. Paludis is free software;
* you can redistribute it and/or modify it under the terms of the GNU General
@@ -40,6 +40,12 @@ ELikeSlotExactRequirement::slot() const
return _s;
}
+bool
+ELikeSlotExactRequirement::from_any_locked() const
+{
+ return _e;
+}
+
const std::string
ELikeSlotAnyUnlockedRequirement::as_string() const
{
diff --git a/paludis/elike_slot_requirement.hh b/paludis/elike_slot_requirement.hh
index ad33609..83f6a2c 100644
--- a/paludis/elike_slot_requirement.hh
+++ b/paludis/elike_slot_requirement.hh
@@ -1,7 +1,7 @@
/* vim: set sw=4 sts=4 et foldmethod=syntax : */
/*
- * Copyright (c) 2008 Ciaran McCreesh
+ * Copyright (c) 2008, 2011 Ciaran McCreesh
*
* This file is part of the Paludis package manager. Paludis is free software;
* you can redistribute it and/or modify it under the terms of the GNU General
@@ -38,6 +38,7 @@ namespace paludis
virtual const std::string as_string() const PALUDIS_ATTRIBUTE((warn_unused_result));
virtual const SlotName slot() const PALUDIS_ATTRIBUTE((warn_unused_result));
+ virtual bool from_any_locked() const PALUDIS_ATTRIBUTE((warn_unused_result));
};
class PALUDIS_VISIBLE ELikeSlotAnyUnlockedRequirement :
diff --git a/paludis/slot_requirement.hh b/paludis/slot_requirement.hh
index d1c3293..993be11 100644
--- a/paludis/slot_requirement.hh
+++ b/paludis/slot_requirement.hh
@@ -41,6 +41,7 @@ namespace paludis
{
public:
virtual const SlotName slot() const PALUDIS_ATTRIBUTE((warn_unused_result)) = 0;
+ virtual bool from_any_locked() const PALUDIS_ATTRIBUTE((warn_unused_result)) = 0;
};
class PALUDIS_VISIBLE SlotAnyLockedRequirement :
diff --git a/paludis/user_dep_spec.cc b/paludis/user_dep_spec.cc
index cfb10c9..986a645 100644
--- a/paludis/user_dep_spec.cc
+++ b/paludis/user_dep_spec.cc
@@ -401,6 +401,12 @@ UserSlotExactRequirement::as_string() const
return ":" + stringify(_s);
}
+bool
+UserSlotExactRequirement::from_any_locked() const
+{
+ return false;
+}
+
GotASetNotAPackageDepSpec::GotASetNotAPackageDepSpec(const std::string & s) throw () :
Exception("'" + s + "' is a set, not a package")
{
diff --git a/paludis/user_dep_spec.hh b/paludis/user_dep_spec.hh
index d426845..c225620 100644
--- a/paludis/user_dep_spec.hh
+++ b/paludis/user_dep_spec.hh
@@ -69,6 +69,7 @@ namespace paludis
virtual const SlotName slot() const PALUDIS_ATTRIBUTE((warn_unused_result));
virtual const std::string as_string() const PALUDIS_ATTRIBUTE((warn_unused_result));
+ virtual bool from_any_locked() const PALUDIS_ATTRIBUTE((warn_unused_result));
};
/**