12 #ifndef ZYPP_SAT_LOOKUPATTRTOOLS_H
13 #define ZYPP_SAT_LOOKUPATTRTOOLS_H
55 template<
class _ResultT,
class _AttrT>
57 transformIterator<_ResultT,_AttrT>
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 _ResultT( lit.
asType<_AttrT>() );
127 template<
class _ResultT,
class _AttrT>
130 template<
class _ResultT,
class _AttrT>
131 std::ostream & operator<<( std::ostream & str, const ArrayAttr<_ResultT,_AttrT> & obj );
153 template<
class _ResultT,
class _AttrT>
163 :
_q( attr_r, loc_r )
167 :
_q( attr_r, repo_r, loc_r )
171 :
_q( attr_r, solv_r )
213 template<
class _ResultT,
class _AttrT>
214 inline std::ostream & operator<<( std::ostream & str, const ArrayAttr<_ResultT,_AttrT> & obj )
215 {
return dumpOn( str, obj._q ); }
223 #endif // ZYPP_SAT_LOOKUPATTRTOOLS_H