Imported Upstream version 14.45.0
[platform/upstream/libzypp.git] / zypp / sat / LookupAttr.h
index f547e22..86500a0 100644 (file)
 #ifndef ZYPP_SAT_LOOKUPATTR_H
 #define ZYPP_SAT_LOOKUPATTR_H
 
+extern "C"
+{
+struct _Dataiterator;
+}
 #include <iosfwd>
 
 #include "zypp/base/PtrTypes.h"
@@ -157,9 +161,8 @@ namespace zypp
         */
         size_type size() const;
 
-        /** TransformIterator returning an \ref iterator vaue of type \c TResult. */
-        template<class TResult, class TAttr = TResult>
-       class TransformIterator;
+        /** TransformIterator returning an \ref iterator vaue of type \c _ResultT. */
+        template<class _ResultT, class _AttrT = _ResultT> class transformIterator;
         //@}
 
       public:
@@ -282,7 +285,7 @@ namespace zypp
 
     namespace detail
     {
-      /** Wrapper around sat \c detail::CDataiterator.
+      /** Wrapper around sat \c ::_Dataiterator.
        *
        * Manages copy and assign, and release of allocated
        * resources like datamatcher inside the dataiterator.
@@ -292,7 +295,7 @@ namespace zypp
       class DIWrap
       {
         public:
-          /** \c NULL \c detail::CDataiterator */
+          /** \c NULL \c ::_Dataiterator */
           DIWrap()
           : _dip( 0 )
           {}
@@ -327,12 +330,12 @@ namespace zypp
           { return _dip; }
 
         public:
-          detail::CDataiterator * operator->() const  { return _dip; }
-          detail::CDataiterator * get()        const  { return _dip; }
+          ::_Dataiterator * operator->() const  { return _dip; }
+          ::_Dataiterator * get()        const  { return _dip; }
           const std::string & getstr()   const  { return _mstring; }
 
        private:
-          detail::CDataiterator * _dip;
+          ::_Dataiterator * _dip;
           std::string _mstring;
       };
       /** \relates DIWrap Stream output. */
@@ -349,7 +352,7 @@ namespace zypp
      */
     class LookupAttr::iterator : public boost::iterator_adaptor<
         iterator                       // Derived
-        , detail::CDataiterator *            // Base
+        , ::_Dataiterator *            // Base
         , detail::IdType               // Value
         , boost::forward_traversal_tag // CategoryOrTraversal
         , detail::IdType               // Reference
@@ -525,7 +528,7 @@ namespace zypp
          *
          * Should be specialized for supported types above.
         */
-        template<class Tp> Tp asType() const { return Tp(id()); }
+        template<class _Tp> _Tp asType() const { return _Tp(id()); }
         //@}
 
         ///////////////////////////////////////////////////////////////////
@@ -542,7 +545,7 @@ namespace zypp
 
       public:
         /**
-         * C-tor taking over ownership of the passed \c detail::CDataiterator
+         * C-tor taking over ownership of the passed \c ::_Dataiterator
          * and doing it's first iteration (::dataiterator_step)
          */
         iterator( detail::DIWrap & dip_r );
@@ -557,7 +560,7 @@ namespace zypp
               && ( ! base() || dip_equal( *base(), *rhs.base() ) );
         }
 
-        bool dip_equal( const detail::CDataiterator & lhs, const detail::CDataiterator & rhs ) const;
+        bool dip_equal( const ::_Dataiterator & lhs, const ::_Dataiterator & rhs ) const;
 
         detail::IdType dereference() const;
 
@@ -565,7 +568,7 @@ namespace zypp
 
       public:
         /** Expert backdoor. */
-        detail::CDataiterator * get() const
+        ::_Dataiterator * get() const
         { return _dip.get(); }
       private:
         detail::DIWrap _dip;
@@ -588,7 +591,7 @@ namespace zypp
     template<> inline IdString     LookupAttr::iterator::asType<IdString>()     const { return idStr(); }
     template<>        CheckSum     LookupAttr::iterator::asType<CheckSum>()     const;
 
-    template<class TResult, class TAttr>
+    template<class _ResultT, class _AttrT>
     class ArrayAttr;
     //@}
 
@@ -600,10 +603,10 @@ namespace zypp
 ///////////////////////////////////////////////////////////////////
 
 /** \relates LookupAttr::iterator Stream output of the underlying iterator for debug. */
-std::ostream & operator<<( std::ostream & str, const zypp::sat::detail::CDataiterator * obj );
+std::ostream & operator<<( std::ostream & str, const ::_Dataiterator * obj );
 
 /** \relates LookupAttr::iterator Stream output of the underlying iterator for debug. */
-inline std::ostream & operator<<( std::ostream & str, const zypp::sat::detail::CDataiterator & obj )
+inline std::ostream & operator<<( std::ostream & str, const ::_Dataiterator & obj )
 { return str << &obj; }
 
 #endif // ZYPP_SAT_LOOKUPATTR_H