12 #ifndef ZYPP_POOLQUERY_H 13 #define ZYPP_POOLQUERY_H 34 class PoolQueryIterator;
93 typedef std::set<ResKind>
Kinds;
161 void addRepo(
const std::string &repoalias);
195 void addString(
const std::string & value);
452 bool recover( std::istream &
str,
char delim =
'\n' );
463 void serialize( std::ostream &
str,
char delim =
'\n' )
const;
508 class PoolQueryMatcher;
523 , sat::LookupAttr::iterator
524 , const sat::Solvable
525 , boost::forward_traversal_tag
526 , const sat::Solvable
529 typedef std::vector<sat::LookupAttr::iterator>
Matches;
602 {
return base_reference().inSolvable(); }
617 {
return str << obj.base(); }
633 #endif // ZYPP_POOLQUERY_H PoolQueryIterator(const shared_ptr< PoolQueryMatcher > &matcher_r)
PoolQuery ctor.
A Solvable object within the sat Pool.
std::ostream & operator<<(std::ostream &str, const PoolQueryIterator &obj)
void setUninstalledOnly()
Return only packages from repos other than .
StatusFilter
Installed status filter setters.
const AttrRawStrMap & attributes() const
Map (map<SolvAttr, StrContainer>) of attribute values added via addAttribute(), addDep in string form...
void addAttribute(const sat::SolvAttr &attr, const std::string &value="")
Filter by the value of the specified attr attribute.
void addDependency(const sat::SolvAttr &attr, const Rel &op, const Edition &edition, const Arch &arch)
std::set< ResKind > Kinds
String matching option flags as used e.g.
void addDependency(const sat::SolvAttr &attr, const std::string &name)
std::ostream & dumpOn(std::ostream &str, const PoolQueryIterator &obj)
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Arch &arch)
PoolQuery iterator as returned by PoolQuery::begin.
void setFlags(const Match &flags)
Free function to set libsolv repo search flags.
void execute(ProcessResolvable fnc)
Executes the query with the current settings.
void addString(const std::string &value)
Add a global query string.
void setFilesMatchBasename(bool value=true)
const StrContainer & strings() const
Search strings added via addString()
Match::Mode matchMode() const
Returns string matching mode as enum.
const Matches & matches() const
void setMatchGlob()
Set to match globs.
void setMatchRegex()
Set to use the query strings as regexes.
String related utilities and Regular expression matching.
detail::PoolQueryIterator const_iterator
bool operator<(const PoolQuery &b) const
bool matchesEmpty() const
False unless this is the end iterator.
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Rel &op, const Edition &edition)
Query "name|global op edition".
void setCaseSensitive(bool value=true)
Turn case sentitivity on or off (unsets or sets SEARCH_NOCASE flag).
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Edition &edition)
void addKind(const ResKind &kind)
Filter by selectable kind.
Edition represents [epoch:]version[-release]
Mode mode() const
Return the mode part.
bool operator!=(const PoolQuery &b) const
const Kinds & kinds() const
void addDependency(const sat::SolvAttr &attr)
Matches::size_type size_type
size_type size() const
Number of solvables in the query result.
bool operator==(const PoolQuery &b) const
void serialize(std::ostream &str, char delim='\n') const
Writes a machine-readable string representation of the query to stream.
const StrContainer & attribute(const sat::SolvAttr &attr) const
std::vector< sat::LookupAttr::iterator > Matches
Base class providing common iterator types based on a Solvable iterator.
bool caseSensitive() const
returns true if search is case sensitive
bool filesMatchFullPath() const
Whether searching in filelists looks at the full path or just at the basenames.
std::set< std::string > StrContainer
void setStatusFilterFlags(StatusFilter flags)
Set status filter directly.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
const StrContainer & repos() const
void addRepo(const std::string &repoalias)
Filter by repo.
void setMatchWord()
Set to match words (uses regex)
const_iterator begin() const
Query result accessers.
matches_iterator matchesEnd() const
End of matches.
friend class boost::iterator_core_access
const Rel editionRel() const
std::ostream & dumpOn(std::ostream &str, const Capability &obj)
void setInstalledOnly()
Return only repo packages.
bool recover(std::istream &str, char delim='\n')
Reads from stream query.
Mode
Mode flags (mutual exclusive).
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Edition &edition, const Arch &arch)
const_iterator end() const
An iterator pointing to the end of the query result.
const Edition edition() const
Matches::const_iterator matches_iterator
void setMatchSubstring()
Set to substring (the default).
std::map< sat::SolvAttr, StrContainer > AttrRawStrMap
void setEdition(const Edition &edition, const Rel &op=Rel::EQ)
Set version condition.
void setMatchExact()
Set to match exact string instead of substring.
shared_ptr< PoolQueryMatcher > _matcher
StatusFilter statusFilterFlags() const
bool matchSubstring() const
matches_iterator matchesBegin() const
Begin of matches.
bool empty() const
Whether the result is empty.
shared_ptr< Matches > _matches
void addDependency(const sat::SolvAttr &attr, const Edition &edition, const Arch &arch)
sat::Solvable dereference() const
Match flags() const
Free function to get libsolv repo search flags.
void setFilesMatchFullPath(bool value=true)
If set (default), look at the full path when searching in filelists.
RW_pointer< Impl > _pimpl
Pointer to implementation.
void addDependency(const sat::SolvAttr &attr, const Arch &arch)
std::string asString() const
Return a human-readable description of the query.
Easy-to use interface to the ZYPP dependency resolver.
size_type matchesSize() const
Number of attribute matches.
function< bool(const sat::Solvable &)> ProcessResolvable
bool requireAll() const
Whether all values added via addString() or addAttribute() are required to match the values of the re...
void addDependency(const sat::SolvAttr &attr, const Rel &op, const Edition &edition)
PoolQueryIterator()
Default ctor is also end.
bool filesMatchBasename() const
void addDependency(const sat::SolvAttr &attr, const Edition &edition)
void setRequireAll(bool require_all=true)
Require that all of the values set by addString or addAttribute match the values of respective attrib...