From cdfae5a9624e7283d372fce261efd018841d21cb Mon Sep 17 00:00:00 2001 From: Johannes Schauer Marin Rodrigues Date: Tue, 7 Sep 2021 20:30:21 +0200 Subject: add pattern to select packages by priority (closes: #989558) --- apt-pkg/cachefilter-patterns.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'apt-pkg/cachefilter-patterns.h') diff --git a/apt-pkg/cachefilter-patterns.h b/apt-pkg/cachefilter-patterns.h index e0c48dd12..d55cb6335 100644 --- a/apt-pkg/cachefilter-patterns.h +++ b/apt-pkg/cachefilter-patterns.h @@ -417,6 +417,22 @@ struct APT_HIDDEN VersionIsVersion : public VersionAnyMatcher return matcher(Ver.VerStr()); } }; + +struct APT_HIDDEN VersionIsPriority : public VersionAnyMatcher +{ + std::string name; + explicit VersionIsPriority(std::string name) : name(name) {} + bool operator()(pkgCache::VerIterator const &Ver) override + { + std::string Mapping[] = {"", "required","important","standard", + "optional","extra"}; + if (Ver->Priority > 0 && Ver->Priority < APT_ARRAY_SIZE(Mapping)) { + return name == Mapping[Ver->Priority]; + } + return false; + } +}; + } // namespace Patterns } // namespace Internal } // namespace APT -- cgit v1.2.3-70-g09d2