12 #ifndef ZYPP_SAT_LOOKUPATTRTOOLS_H 13 #define ZYPP_SAT_LOOKUPATTRTOOLS_H 55 template<
class TResult,
class TAttr>
56 class LookupAttr::TransformIterator :
public boost::iterator_adaptor<
57 TransformIterator<TResult,TAttr>
58 , LookupAttr::iterator
60 , boost::forward_traversal_tag
70 { this->base_reference() = val_r; }
78 { this->base_reference().nextSkipSolvAttr(); }
82 { this->base_reference().nextSkipSolvable(); }
86 { this->base_reference().nextSkipRepo(); }
90 { this->base_reference().skipSolvAttr(); }
94 { this->base_reference().skipSolvable(); }
98 { this->base_reference().skipRepo(); }
105 {
return this->base_reference().inRepo(); }
109 {
return this->base_reference().inSolvable(); }
113 {
return this->base_reference().inSolvAttr(); }
122 return TResult( lit.
asType<TAttr>() );
127 template<
class TResult,
class TAttr>
130 template<
class TResult,
class TAttr>
131 std::ostream & operator<<( std::ostream & str, const ArrayAttr<TResult,TAttr> & obj );
153 template<
class TResult,
class TAttr>
163 : _q( attr_r, loc_r )
167 : _q( attr_r, repo_r, loc_r )
171 : _q( attr_r, solv_r )
179 {
return iterator( _q.begin() ); }
182 {
return iterator( _q.end() ); }
185 {
return _q.empty(); }
197 iterator
find(
const TResult & key_r )
const 213 template<
class TResult,
class TAttr>
214 inline std::ostream & operator<<( std::ostream & str, const ArrayAttr<TResult,TAttr> & obj )
223 #endif // ZYPP_SAT_LOOKUPATTRTOOLS_H Tp asType() const
Templated return type.
A Solvable object within the sat Pool.
LookupAttr::size_type size_type
Lightweight attribute value lookup.
LookupAttr::TransformIterator< TResult, TAttr > iterator
String related utilities and Regular expression matching.
#define for_(IT, BEG, END)
Convenient for-loops using iterator.
Search for solvable attributes (default)
LookupAttr::TransformIterator based container to retrieve list attributes.
ArrayAttr(SolvAttr attr_r, LookupAttr::Location loc_r=LookupAttr::SOLV_ATTR)
ArrayAttr(SolvAttr attr_r, Solvable solv_r)
iterator end() const
Iterator behind the end of query results.
std::ostream & dumpOn(std::ostream &str, const LookupAttr &obj)
ArrayAttr(SolvAttr attr_r, Repository repo_r, LookupAttr::Location loc_r=LookupAttr::SOLV_ATTR)
iterator find(const TResult &key_r) const
Easy-to use interface to the ZYPP dependency resolver.
Location
Specify the where to look for the attribule.
iterator begin() const
Iterator to the begin of query results.