+
+ public:
+ // These refer to the archive file for the Version
+ virtual std::string FileName() APT_OVERRIDE;
+ virtual std::string SourcePkg() APT_OVERRIDE;
+ virtual std::string SourceVer() APT_OVERRIDE;
+
+ virtual HashStringList Hashes() const APT_OVERRIDE;
+
+ // These are some general stats about the package
+ virtual std::string Maintainer() APT_OVERRIDE;
+ virtual std::string ShortDesc(std::string const &lang) APT_OVERRIDE;
+ virtual std::string LongDesc(std::string const &lang) APT_OVERRIDE;
+ virtual std::string Name() APT_OVERRIDE;
+ virtual std::string Homepage() APT_OVERRIDE;
+
+ // An arbitrary custom field
+ virtual std::string RecordField(const char *fieldName) APT_OVERRIDE;
+
+ virtual void GetRec(const char *&Start,const char *&Stop) APT_OVERRIDE;
+
+ debRecordParserBase();
+ virtual ~debRecordParserBase();
+};
+
+class APT_HIDDEN debRecordParser : public debRecordParserBase
+{
+ void * const d;
+ protected:
+ FileFd File;
+ pkgTagFile Tags;
+
+ virtual bool Jump(pkgCache::VerFileIterator const &Ver) APT_OVERRIDE;
+ virtual bool Jump(pkgCache::DescFileIterator const &Desc) APT_OVERRIDE;
+
+ public:
+ debRecordParser(std::string FileName,pkgCache &Cache);
+ virtual ~debRecordParser();