]> git.saurik.com Git - apt.git/blob - apt-pkg/edsp/edsplistparser.h
Do not use MD5SumValue for Description_md5()
[apt.git] / apt-pkg / edsp / edsplistparser.h
1 // -*- mode: cpp; mode: fold -*-
2 // Description /*{{{*/
3 /* ######################################################################
4
5 EDSP Package List Parser - This implements the abstract parser
6 interface for the APT specific intermediate format which is passed
7 to external resolvers
8
9 ##################################################################### */
10 /*}}}*/
11 #ifndef PKGLIB_EDSPLISTPARSER_H
12 #define PKGLIB_EDSPLISTPARSER_H
13
14 #include <apt-pkg/deblistparser.h>
15 #include <apt-pkg/md5.h>
16 #include <apt-pkg/pkgcache.h>
17 #include <apt-pkg/fileutl.h>
18
19 #include <string>
20
21 #ifndef APT_8_CLEANER_HEADERS
22 #include <apt-pkg/pkgcachegen.h>
23 #include <apt-pkg/indexfile.h>
24 #include <apt-pkg/tagfile.h>
25 #endif
26
27 namespace APT {
28 class StringView;
29 }
30 class APT_HIDDEN edspLikeListParser : public debListParser
31 {
32 public:
33 virtual bool NewVersion(pkgCache::VerIterator &Ver) APT_OVERRIDE;
34 virtual std::vector<std::string> AvailableDescriptionLanguages() APT_OVERRIDE;
35 virtual APT::StringView Description_md5() APT_OVERRIDE;
36 virtual unsigned short VersionHash() APT_OVERRIDE;
37
38 bool LoadReleaseInfo(pkgCache::RlsFileIterator &FileI,FileFd &File,
39 std::string const &section);
40
41 edspLikeListParser(FileFd *File);
42 virtual ~edspLikeListParser();
43 };
44
45 class APT_HIDDEN edspListParser : public edspLikeListParser
46 {
47 FileFd extendedstates;
48 FileFd preferences;
49
50 protected:
51 virtual bool ParseStatus(pkgCache::PkgIterator &Pkg,pkgCache::VerIterator &Ver) APT_OVERRIDE;
52
53 public:
54 edspListParser(FileFd *File);
55 virtual ~edspListParser();
56 };
57
58 class APT_HIDDEN eippListParser : public edspLikeListParser
59 {
60 protected:
61 virtual bool ParseStatus(pkgCache::PkgIterator &Pkg,pkgCache::VerIterator &Ver) APT_OVERRIDE;
62
63 public:
64 eippListParser(FileFd *File);
65 virtual ~eippListParser();
66 };
67 #endif