]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/deb/deblistparser.h
move implementation of checksums around by abstracting even more
[apt.git] / apt-pkg / deb / deblistparser.h
index 4bc1bd93c286d2dee1375439258c38f1662d4102..41d712fbfac6b194af4b9983a17f95e6a6c61852 100644 (file)
@@ -25,9 +25,12 @@ class debListParser : public pkgCacheGenerator::ListParser
       const char *Str;
       unsigned char Val;
    };
       const char *Str;
       unsigned char Val;
    };
-   
+
    private:
    private:
-   
+   /** \brief dpointer placeholder (for later in case we need it) */
+   void *d;
+
+   protected:
    pkgTagFile Tags;
    pkgTagSection Section;
    unsigned long iOffset;
    pkgTagFile Tags;
    pkgTagSection Section;
    unsigned long iOffset;
@@ -36,10 +39,11 @@ class debListParser : public pkgCacheGenerator::ListParser
    bool MultiArchEnabled;
 
    unsigned long UniqFindTagWrite(const char *Tag);
    bool MultiArchEnabled;
 
    unsigned long UniqFindTagWrite(const char *Tag);
-   bool ParseStatus(pkgCache::PkgIterator &Pkg,pkgCache::VerIterator &Ver);
+   virtual bool ParseStatus(pkgCache::PkgIterator &Pkg,pkgCache::VerIterator &Ver);
    bool ParseDepends(pkgCache::VerIterator &Ver,const char *Tag,
                     unsigned int Type);
    bool ParseProvides(pkgCache::VerIterator &Ver);
    bool ParseDepends(pkgCache::VerIterator &Ver,const char *Tag,
                     unsigned int Type);
    bool ParseProvides(pkgCache::VerIterator &Ver);
+   bool NewProvidesAllArch(pkgCache::VerIterator &Ver, string const &Package, string const &Version);
    static bool GrabWord(string Word,WordList *List,unsigned char &Out);
    
    public:
    static bool GrabWord(string Word,WordList *List,unsigned char &Out);
    
    public:
@@ -69,10 +73,11 @@ class debListParser : public pkgCacheGenerator::ListParser
    static const char *ParseDepends(const char *Start,const char *Stop,
                            string &Package,string &Ver,unsigned int &Op,
                            bool const &ParseArchFlags = false,
    static const char *ParseDepends(const char *Start,const char *Stop,
                            string &Package,string &Ver,unsigned int &Op,
                            bool const &ParseArchFlags = false,
-                           bool const &StripMultiArch = false);
+                           bool const &StripMultiArch = true);
    static const char *ConvertRelation(const char *I,unsigned int &Op);
 
    debListParser(FileFd *File, string const &Arch = "");
    static const char *ConvertRelation(const char *I,unsigned int &Op);
 
    debListParser(FileFd *File, string const &Arch = "");
+   virtual ~debListParser() {};
 };
 
 #endif
 };
 
 #endif