backup
authorMichael Andres <ma@suse.de>
Mon, 10 Dec 2007 15:09:44 +0000 (15:09 +0000)
committerMichael Andres <ma@suse.de>
Mon, 10 Dec 2007 15:09:44 +0000 (15:09 +0000)
zypp/pool/Res2Sat.cc
zypp/sat/IdStr.h

index f9fd19541f032534f98d539d4561e88b5cd2bc61..09b5168ab88e1c10dded9423f37137a78b99d1b0 100644 (file)
@@ -109,7 +109,7 @@ namespace zypp
       if ( ! ( res_r && slv ) )
       {
         INT << res_r << " -> " << slv_r << endl;
-        ZYPP_THROW( Exception( _("Can't store data in NULL objlect") ) );
+        ZYPP_THROW( Exception( _("Can't store data in NULL object") ) );
       }
 
       if ( isKind<Package>( res_r ) )
index 9e5bfc42ee8a05936106c5c698ccfa91c0b294c3..0a7527c66373af3b4b660099d999b6ea7fccf267 100644 (file)
@@ -46,16 +46,18 @@ namespace zypp
         explicit IdStr( const char * str_r );
         /** Ctor from string. */
         explicit IdStr( const std::string & str_r );
-        /** Evaluate in a boolean context (\c != \c Null). */
+        /** Evaluate in a boolean context <tt>( != \c Null )</tt>. */
         using base::SafeBool<IdStr>::operator bool_type;
       public:
-        /** No or Null string. */
+        /** No or Null string ( Id \c 0 ). */
         static const IdStr Null;
         /** Empty string. */
         static const IdStr Empty;
       public:
+        /** Whether string is empty. */
         bool empty() const
         { return( _id == Empty.id() ); }
+        /** the strings size. */
         unsigned size() const;
       public:
         /** Conversion to <tt>const char *</tt> */
@@ -84,11 +86,34 @@ namespace zypp
     /** \relates IdStr */
     inline bool operator==( const IdStr & lhs, const IdStr & rhs )
     { return lhs.id() == rhs.id(); }
+    /** \overload */
+    inline bool operator==( const IdStr & lhs, const char * rhs )
+    { if ( ! rhs ) return( ! lhs ); return( ::strcmp( lhs.c_str(), rhs ) == 0 ); }
+    /** \overload */
+    inline bool operator==( const IdStr & lhs, const std::string & rhs )
+    { return( lhs == rhs.c_str() ); }
+    /** \overload */
+    inline bool operator==( const char * lhs, const IdStr & rhs )
+    { return( rhs == lhs ); }
+    /** \overload */
+    inline bool operator==( const std::string & lhs, const IdStr & rhs )
+    { return( rhs == lhs ); }
 
     /** \relates IdStr */
     inline bool operator!=( const IdStr & lhs, const IdStr & rhs )
-    { return lhs.id() != rhs.id(); }
-
+    { return ! ( lhs == rhs ); }
+    /** \overload */
+    inline bool operator==( const IdStr & lhs, const char * rhs )
+    { return ! ( lhs == rhs ); }
+    /** \overload */
+    inline bool operator==( const IdStr & lhs, const std::string & rhs )
+    { return ! ( lhs == rhs ); }
+    /** \overload */
+    inline bool operator==( const char * lhs, const IdStr & rhs )
+    { return ! ( lhs == rhs ); }
+    /** \overload */
+    inline bool operator==( const std::string & lhs, const IdStr & rhs )
+    { return ! ( lhs == rhs ); }
 
     /////////////////////////////////////////////////////////////////
   } // namespace sat