X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/0149949bce07d3a15cb8a197df1240d56f7bcd26..bebdca4bf63ae661c60bc1e0f4e03e6bbb7a7cc5:/apt-pkg/deb/deblistparser.h diff --git a/apt-pkg/deb/deblistparser.h b/apt-pkg/deb/deblistparser.h index a458eb60c..6888c1a5e 100644 --- a/apt-pkg/deb/deblistparser.h +++ b/apt-pkg/deb/deblistparser.h @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: deblistparser.h,v 1.2 1998/07/04 22:32:18 jgg Exp $ +// $Id: deblistparser.h,v 1.6 1998/12/14 02:23:47 jgg Exp $ /* ###################################################################### Debian Package List Parser - This implements the abstract parser @@ -12,13 +12,14 @@ #ifndef PKGLIB_DEBLISTPARSER_H #define PKGLIB_DEBLISTPARSER_H -#include -#include +#include +#include class debListParser : public pkgCacheGenerator::ListParser { pkgTagFile Tags; pkgTagSection Section; + unsigned long iOffset; // Parser Helper struct WordList @@ -27,11 +28,13 @@ class debListParser : public pkgCacheGenerator::ListParser unsigned char Val; }; - string FindTag(const char *Tag); - signed long FindTagI(const char *Tag,signed long Default = 0); unsigned long UniqFindTagWrite(const char *Tag); - bool HandleFlag(const char *Tag,unsigned long &Flags,unsigned long Flag); bool ParseStatus(pkgCache::PkgIterator Pkg,pkgCache::VerIterator Ver); + const char *ParseDepends(const char *Start,const char *Stop, + string &Package,string &Ver,unsigned int &Op); + bool ParseDepends(pkgCache::VerIterator Ver,const char *Tag, + unsigned int Type); + bool ParseProvides(pkgCache::VerIterator Ver); bool GrabWord(string Word,WordList *List,int Count,unsigned char &Out); public: @@ -40,13 +43,16 @@ class debListParser : public pkgCacheGenerator::ListParser virtual string Package(); virtual string Version(); virtual bool NewVersion(pkgCache::VerIterator Ver); - virtual bool NewPackage(pkgCache::PkgIterator Pkg); virtual bool UsePackage(pkgCache::PkgIterator Pkg, pkgCache::VerIterator Ver); + virtual unsigned long Offset() {return iOffset;}; + virtual unsigned long Size() {return Section.size();}; virtual bool Step(); + + bool LoadReleaseInfo(pkgCache::PkgFileIterator FileI,FileFd &File); - debListParser(File &File); + debListParser(FileFd &File); }; #endif