11#ifndef ZYPP_SAT_SOLVABLESPEC_H
12#define ZYPP_SAT_SOLVABLESPEC_H
17#include <zypp/base/PtrTypes.h>
18#include <zypp-core/base/InputStream>
19#include <zypp/base/String.h>
75 template <
class TIterator>
90 template <
class Derived>
Provides API related macros.
RepoManager implementation.
Convenience char* constructible from std::string and char*, it maps (char*)0 to an empty string.
Access to the sat-pools string space.
Define a set of Solvables by ident and provides.
friend std::ostream & operator<<(std::ostream &str, const SolvableSpec &obj)
void parse(const C_Str &spec_r)
Parse and add spec from a string (IDENT or provides:CAPABILITY`).
bool dirty() const
Whether the cache is needed and dirty.
bool containsIdent(const IdString &ident_r) const
Whether ident_r has been added to the specs (mainly for parser tests).
void splitParseFrom(const C_Str &multispec_r)
Convenience using str::splitEscaped(", \t") to parse multiple specs from one line.
void parseFrom(TIterator begin, TIterator end)
Parse and add specs from iterator range.
bool contains(const SolvableType< Derived > &solv_r) const
This is an overloaded member function, provided for convenience. It differs from the above function o...
RWCOW_pointer< Impl > _pimpl
Implementation class.
bool addIdenticalInstalledToo() const
Extend the provides set to include idential installed items as well.
bool contains(const sat::Solvable &solv_r) const
Test whether solv_r matches the spec.
bool containsProvides(const Capability &provides_r) const
Whether provides_r has been added to the sepcs (mainly for parser tests).
bool empty() const
Whether neither idents nor provides are set.
SolvableSpec()
Default ctor.
void setDirty() const
Explicitly flag the cache as dirty, so it will be rebuilt on the next request.
void addProvides(Capability provides_r)
A all sat::Solvable matching this provides_r.
void addIdent(IdString ident_r)
Add all sat::Solvable with this ident_r.
void parseFrom(const InputStream &istr_r)
Parse file istr_r and add its specs (one per line, #-comments).
A Solvable object within the sat Pool.
String related utilities and Regular expression matching.
std::ostream & operator<<(std::ostream &str, const FileConflicts &obj)
Easy-to use interface to the ZYPP dependency resolver.
RW_pointer supporting 'copy on write' functionality.
Base class for creating Solvable based types.
Solvable satSolvable() const
Return the corresponding sat::Solvable.
#define for_(IT, BEG, END)
Convenient for-loops using iterator.