12 #ifndef ZYPP_POOLQUERY_H 13 #define ZYPP_POOLQUERY_H 34 class PoolQueryIterator;
93 using Kinds = std::set<ResKind>;
153 void addKind(
const ResKind & kind);
161 void addRepo(
const std::string &repoalias);
166 void setComment(
const std::string & comment)
const;
168 void setComment(
const std::string & comment);
184 void setInstalledOnly();
186 void setUninstalledOnly();
188 void setStatusFilterFlags( StatusFilter flags );
202 void addString(
const std::string & value);
303 { addDependency(
attr, name,
Rel::EQ, edition, arch ); }
314 { addDependency(
attr, std::string(), op, edition ); }
317 { addDependency(
attr, std::string(), op, edition, arch ); }
321 { addDependency(
attr, std::string(),
Rel::EQ, edition ); }
324 { addDependency(
attr, std::string(),
Rel::EQ, edition, arch ); }
362 void setCaseSensitive(
bool value =
true );
369 void setFilesMatchFullPath(
bool value =
true );
372 { setFilesMatchFullPath( !value ); }
375 void setMatchExact();
377 void setMatchSubstring();
381 void setMatchRegex();
391 const StrContainer & strings()
const;
395 const AttrRawStrMap & attributes()
const;
399 const Kinds & kinds()
const;
401 const StrContainer & repos()
const;
403 const std::string & comment()
const;
406 const Rel editionRel()
const;
411 bool caseSensitive()
const;
414 bool filesMatchFullPath()
const;
417 {
return !filesMatchFullPath(); }
419 bool matchExact()
const;
420 bool matchSubstring()
const;
421 bool matchGlob()
const;
422 bool matchRegex()
const;
423 bool matchWord()
const;
429 {
return flags().mode(); }
431 StatusFilter statusFilterFlags()
const;
444 bool recover( std::istream &
str,
char delim =
'\n' );
455 void serialize( std::ostream &
str,
char delim =
'\n' )
const;
480 void setFlags(
const Match & flags );
506 class PoolQueryMatcher;
521 , sat::LookupAttr::iterator
522 , const sat::Solvable
523 , boost::forward_traversal_tag
524 , const sat::Solvable
527 using Matches = std::vector<sat::LookupAttr::iterator>;
538 : _matcher( matcher_r )
597 friend class boost::iterator_core_access;
600 {
return base_reference().inSolvable(); }
605 const Matches & matches()
const;
615 {
return str << obj.base(); }
631 #endif // ZYPP_POOLQUERY_H std::string asString(const Patch::Category &obj)
PoolQueryIterator(const shared_ptr< PoolQueryMatcher > &matcher_r)
PoolQuery ctor.
std::set< std::string > StrContainer
A Solvable object within the sat Pool.
std::ostream & operator<<(std::ostream &str, const PoolQueryIterator &obj)
StatusFilter
Installed status filter setters.
function< bool(const sat::Solvable &)> ProcessResolvable
void addDependency(const sat::SolvAttr &attr, const Rel &op, const Edition &edition, const Arch &arch)
std::vector< sat::LookupAttr::iterator > Matches
String matching option flags as used e.g.
void addDependency(const sat::SolvAttr &attr, const std::string &name)
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Arch &arch)
PoolQuery iterator as returned by PoolQuery::begin.
void setFilesMatchBasename(bool value=true)
Match::Mode matchMode() const
Returns string matching mode as enum.
String related utilities and Regular expression matching.
bool matchesEmpty() const
False unless this is the end iterator.
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Edition &edition)
Edition represents [epoch:]version[-release]
bool operator==(const SetRelation::Enum &lhs, const SetCompare &rhs)
bool operator!=(const PoolQuery &b) const
void addDependency(const sat::SolvAttr &attr)
Base class providing common iterator types based on a Solvable iterator.
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
matches_iterator matchesEnd() const
End of matches.
std::ostream & dumpOn(std::ostream &str, const Capability &obj)
Mode
Mode flags (mutual exclusive).
const_iterator end() const
An iterator pointing to the end of the query result.
void addDependency(const sat::SolvAttr &attr, const std::string &name, const Edition &edition, const Arch &arch)
std::set< ResKind > Kinds
shared_ptr< PoolQueryMatcher > _matcher
std::map< sat::SolvAttr, StrContainer > AttrRawStrMap
Wrapper for const correct access via Smart pointer types.
matches_iterator matchesBegin() const
Begin of matches.
Matches::const_iterator matches_iterator
shared_ptr< Matches > _matches
void addDependency(const sat::SolvAttr &attr, const Edition &edition, const Arch &arch)
sat::Solvable dereference() const
void addDependency(const sat::SolvAttr &attr, const Arch &arch)
bool operator<(const StrMatcher &lhs, const StrMatcher &rhs)
Easy-to use interface to the ZYPP dependency resolver.
size_type matchesSize() const
Number of attribute matches.
Matches::size_type size_type
void addDependency(const sat::SolvAttr &attr, const Rel &op, const Edition &edition)
#define ZYPP_DEPRECATED
The ZYPP_DEPRECATED macro can be used to trigger compile-time warnings with gcc >= 3...
PoolQueryIterator()
Default ctor is also end.
bool filesMatchBasename() const
void addDependency(const sat::SolvAttr &attr, const Edition &edition)