]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/version.h
implement generic config fallback for methods
[apt.git] / apt-pkg / version.h
index 4c37ba8f868625266633ed74dc03495eb5968e0e..5110ecaa7d9f8d0ed4e11dd1534209faca6599f4 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: version.h,v 1.7 2001/05/14 05:58:33 jgg Exp $
+// $Id: version.h,v 1.8 2001/05/27 05:55:27 jgg Exp $
 /* ######################################################################
 
    Version - Versioning system..
 #ifndef PKGLIB_VERSION_H
 #define PKGLIB_VERSION_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/version.h"
-#endif 
-
+#include <apt-pkg/strutl.h>
 #include <string>
 
+#ifndef APT_8_CLEANER_HEADERS
 using std::string;
+#endif
 
 class pkgVersioningSystem
 {
@@ -34,7 +33,7 @@ class pkgVersioningSystem
    // Global list of VS's
    static pkgVersioningSystem **GlobalList;
    static unsigned long GlobalListLen;
-   static pkgVersioningSystem *GetVS(const char *Label);
+   static pkgVersioningSystem *GetVS(const char *Label) APT_PURE;
    
    const char *Label;
    
@@ -45,36 +44,18 @@ class pkgVersioningSystem
    virtual bool CheckDep(const char *PkgVer,int Op,const char *DepVer) = 0;
    virtual int DoCmpReleaseVer(const char *A,const char *Aend,
                               const char *B,const char *Bend) = 0;
-   virtual string UpstreamVersion(const char *A) = 0;
+   virtual std::string UpstreamVersion(const char *A) = 0;
    
    // See if the given VS is compatible with this one.. 
    virtual bool TestCompatibility(pkgVersioningSystem const &Against) 
                 {return this == &Against;};
 
    // Shortcuts
-   inline int CmpVersion(const char *A, const char *B)
-   {
-      return DoCmpVersion(A,A+strlen(A),B,B+strlen(B));
-   };
-   inline int CmpVersion(string A,string B)
-   {
-      return DoCmpVersion(A.c_str(),A.c_str()+A.length(),B.c_str(),B.c_str()+B.length());
-   };  
-   inline int CmpReleaseVer(const char *A, const char *B)
-   {
-      return DoCmpReleaseVer(A,A+strlen(A),B,B+strlen(B));
-   };
-   inline int CmpReleaseVer(string A,string B)
-   {
-      return DoCmpReleaseVer(A.c_str(),A.c_str()+A.length(),B.c_str(),B.c_str()+B.length());
-   };  
+   APT_MKSTRCMP(CmpVersion,DoCmpVersion);
+   APT_MKSTRCMP(CmpReleaseVer,DoCmpReleaseVer);
    
    pkgVersioningSystem();
-   virtual ~pkgVersioningSystem() {};
+   virtual ~pkgVersioningSystem();
 };
 
-#ifdef APT_COMPATIBILITY
-#include <apt-pkg/debversion.h>
-#endif
-
 #endif