X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/472ff00ef2e48383805d281c6364ec27839e3f4d..ab16ead7f8e3824f5099558b9d559f6520a24570:/apt-pkg/contrib/cmndline.h diff --git a/apt-pkg/contrib/cmndline.h b/apt-pkg/contrib/cmndline.h index b201d9855..805cb9eae 100644 --- a/apt-pkg/contrib/cmndline.h +++ b/apt-pkg/contrib/cmndline.h @@ -44,6 +44,12 @@ #ifndef PKGLIB_CMNDLINE_H #define PKGLIB_CMNDLINE_H +#include + +#ifndef APT_8_CLEANER_HEADERS +#include +#endif + class Configuration; class CommandLine @@ -51,6 +57,7 @@ class CommandLine public: struct Args; struct Dispatch; + struct DispatchWithHelp; protected: @@ -76,9 +83,18 @@ class CommandLine bool Parse(int argc,const char **argv); void ShowHelp(); - unsigned int FileSize() const; + unsigned int FileSize() const APT_PURE; + // FIXME: merge on next ABI break bool DispatchArg(Dispatch *List,bool NoMatch = true); + bool DispatchArg(Dispatch const * const List,bool NoMatch = true); + static char const * GetCommand(Dispatch const * const Map, + unsigned int const argc, char const * const * const argv) APT_PURE; + + static CommandLine::Args MakeArgs(char ShortOpt, char const *LongOpt, + char const *ConfName, unsigned long Flags) APT_CONST; + + CommandLine(); CommandLine(Args *AList,Configuration *Conf); ~CommandLine(); };