12 #ifndef ZYPP_RESPOOL_H
13 #define ZYPP_RESPOOL_H
113 {
return( resolvable_r ?
find( resolvable_r->satSolvable() ) :
PoolItem() ); }
118 template<
class TFilter>
119 filter_iterator<TFilter,const_iterator>
filterBegin(
const TFilter & filter_r )
const
122 template<
class TFilter>
123 filter_iterator<TFilter,const_iterator>
filterEnd(
const TFilter & filter_r )
const
126 template<
class TFilter>
168 return make_transform_iterator(
id2item().equal_range( ident_r.
get() ).first,
199 return make_transform_iterator(
id2item().equal_range( ident_r.
get() ).second,
239 {
return makeIterable( byIdentBegin<TRes>( name_r ), byIdentEnd<TRes>( name_r ) ); }
243 {
return makeIterable( byIdentBegin<TRes>( name_r ), byIdentEnd<TRes>( name_r ) ); }
280 {
return makeIterable( byKindBegin<TRes>(), byKindEnd<TRes>() ); }
434 #endif // ZYPP_RESPOOL_H
transform_iterator< Id2ItemValueSelector, Id2ItemT::const_iterator > byIdent_iterator
ItemContainerT::size_type size_type
A Solvable object within the sat Pool.
const_iterator begin() const
byIdent_iterator byIdentBegin(sat::Solvable slv_r) const
Derive name and kind from sat::Solvable.
zypp::resfilter::ByName ByName
byName_iterator byNameBegin(const std::string &name_r) const
byIdent_iterator byIdentBegin(const PoolItem &pi_r) const
Derive name and kind from PoolItem.
byIdent_iterator byIdentBegin(ResKind kind_r, IdString name_r) const
Iterable< filter_iterator< filter::ByStatus, const_iterator > > byStatus(const filter::ByStatus &filter_r) const
byIdent_iterator byIdentEnd(const PoolItem &pi_r) const
Derive name and kind from PoolItem.
byKind_iterator byKindBegin(const ResKind &kind_r) const
std::vector< PoolItem > ItemContainerT
pure items
Filter solvables according to their status.
pool::PoolTraits::repository_iterator repository_iterator
byName_iterator byNameEnd(const std::string &name_r) const
pool::PoolTraits::size_type size_type
friend std::ostream & operator<<(std::ostream &str, const ResPool &obj)
bool isRequestedLocale(const Locale &locale_r) const
Whether this Locale is in the set of requested locales.
const pool::PoolTraits::Id2ItemT & id2item() const
byIdent_iterator byIdentBegin(IdString name_r) const
In CXX0X std::_Select2nd does no longer derive from std::unary_function.
Iterable< repository_iterator > knownRepositories() const
Access to the sat-pools string space.
Iterable< byIdent_iterator > byIdent(const C_Str &name_r) const
pool::PoolTraits::HardLockQueries HardLockQueries
const_iterator end() const
bool hardLockQueriesEmpty() const
TraitsType::constPtrType constPtr
std::list< PoolQuery > HardLockQueries
hard locks from etc/zypp/locks
byKind_iterator byKindEnd(const ResKind &kind_r) const
byIdent_iterator byIdentEnd(const ByIdent &ident_r) const
byKind_iterator byKindBegin() const
filter_iterator< TFilter, typename TContainer::const_iterator > make_filter_end(TFilter f, const TContainer &c)
Convenience to create filter_iterator from container::end().
Select ResObject by name.
ResPool::instance().proxy();.
bool eraseRequestedLocale(const Locale &locale_r)
Erase one Locale from the set of requested locales.
filter_iterator< filter::ByStatus, const_iterator > byStatusEnd(const filter::ByStatus &filter_r) const
Repository reposFind(const std::string &alias_r) const
Find a Repository named alias_r.
shared_ptr< PoolImpl > Impl_Ptr
byIdent_iterator byIdentEnd(IdString name_r) const
filter_iterator< ByKind, const_iterator > byKind_iterator
byIdent_iterator byIdentEnd(const C_Str &name_r) const
filter_iterator< ByName, const_iterator > byName_iterator
Iterable< byKind_iterator > byKind() const
repository_iterator knownRepositoriesEnd() const
ResPoolProxy proxy() const
preliminary
Dependency resolver interface.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
Iterable< byName_iterator > byName(const std::string &name_r) const
Iterable< byIdent_iterator > byIdent(IdString ident_r) const
Iterable< byIdent_iterator > byIdent(const ByIdent &ident_r) const
pool::PoolTraits::byIdent_iterator byIdent_iterator
Convenience char* constructible from std::string and char*, it maps (char*)0 to an empty string...
Provides API related macros.
void getHardLockQueries(HardLockQueries &activeLocks_r)
Suggest a new set of queries based on the current selection.
byIdent_iterator byIdentEnd(sat::Solvable slv_r) const
Derive name and kind from sat::Solvable.
Iterable< byIdent_iterator > byIdent(const PoolItem &pi_r) const
byIdent_iterator byIdentBegin(ResKind kind_r, const C_Str &name_r) const
PoolItem value_type
PoolItem
const LocaleSet & getRequestedLocales() const
Return the requested locales.
Iterable< filter_iterator< TFilter, const_iterator > > filter(const TFilter &filter_r) const
filter_iterator< ByPoolItem, ItemContainerT::const_iterator > const_iterator
hardLockQueries_iterator hardLockQueriesBegin() const
Iterable< byIdent_iterator > byIdent(ResKind kind_r, IdString name_r) const
sat::detail::IdType get() const
byIdent_iterator byIdentEnd(ResKind kind_r, IdString name_r) const
Simple serial number provider.
'Language[_Country]' codes.
filter_iterator< TFilter, const_iterator > filterBegin(const TFilter &filter_r) const
void setHardLockQueries(const HardLockQueries &newLocks_r)
Set a new set of queries.
repository_iterator knownRepositoriesBegin() const
byIdent_iterator byIdentEnd(IdString ident_r) const
Takes a sat::Solvable::ident string.
std::unordered_multimap< sat::detail::IdType, PoolItem > Id2ItemT
ident index
size_type knownRepositoriesSize() const
hardLockQueries_iterator hardLockQueriesEnd() const
PoolItem find(const ResObject::constPtr &resolvable_r) const
Resolver & resolver() const
The Resolver.
bool addRequestedLocale(const Locale &locale_r)
Add one Locale to the set of requested locales.
pool::PoolTraits::hardLockQueries_iterator hardLockQueries_iterator
Iterable< byKind_iterator > byKind(const ResKind &kind_r) const
Solvable satSolvable() const
Return the corresponding sat::Solvable.
Iterable< byIdent_iterator > byIdent(sat::Solvable slv_r) const
HardLockQueries::const_iterator hardLockQueries_iterator
const SerialNumber & serial() const
The pools serial number.
Iterable< byIdent_iterator > byIdent(IdString name_r) const
byIdent_iterator byIdentEnd(ResKind kind_r, const C_Str &name_r) const
Combining sat::Solvable and ResStatus.
filter_iterator< TFilter, typename TContainer::const_iterator > make_filter_begin(TFilter f, const TContainer &c)
Convenience to create filter_iterator from container::begin().
const LocaleSet & getAvailableLocales() const
Get the set of available locales.
pool::PoolTraits::const_iterator const_iterator
size_type hardLockQueriesSize() const
PoolItem find(const sat::Solvable &slv_r) const
Return the corresponding PoolItem.
Iterable< byIdent_iterator > byIdent(ResKind kind_r, const C_Str &name_r) const
Iterable< hardLockQueries_iterator > hardLockQueries() const
byKind_iterator byKindEnd() const
Pool internal filter skiping invalid/unwanted PoolItems.
RW_pointer< pool::PoolTraits::Impl > _pimpl
Access to implementation.
byIdent_iterator byIdentBegin(const ByIdent &ident_r) const
ResPool(pool::PoolTraits::Impl_Ptr impl_r)
Ctor.
void setRequestedLocales(const LocaleSet &locales_r)
Set the requested locales.
const pool::PoolTraits::ItemContainerT & store() const
byIdent_iterator byIdentBegin(IdString ident_r) const
Takes a sat::Solvable::ident string.
byIdent_iterator byIdentBegin(const C_Str &name_r) const
std::unordered_set< Locale > LocaleSet
filter_iterator< TFilter, const_iterator > filterEnd(const TFilter &filter_r) const
Main filter selecting PoolItems by name and kind.
bool isAvailableLocale(const Locale &locale_r) const
Whether this Locale is in the set of available locales.
Filter solvables according to their kind.
static ResPool instance()
Singleton ctor.
filter_iterator< filter::ByStatus, const_iterator > byStatusBegin(const filter::ByStatus &filter_r) const