projects
/
apt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* apt-pkg/depcache.cc:
[apt.git]
/
apt-pkg
/
contrib
/
cmndline.h
diff --git
a/apt-pkg/contrib/cmndline.h
b/apt-pkg/contrib/cmndline.h
index 27f69729cb6051f6a791a3ccdd002a370438ffac..8f461296f096957bcc4f09820676876241a32bf8 100644
(file)
--- a/
apt-pkg/contrib/cmndline.h
+++ b/
apt-pkg/contrib/cmndline.h
@@
-1,6
+1,6
@@
// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: cmndline.h,v 1.
2 1998/09/26 05:34:25
jgg Exp $
+// $Id: cmndline.h,v 1.
7 1999/10/31 06:32:28
jgg Exp $
/* ######################################################################
Command Line Class - Sophisticated command line parser
/* ######################################################################
Command Line Class - Sophisticated command line parser
@@
-17,7
+17,7
@@
CommandLine::Args Args[] =
{{'q',"quiet","apt::get::quiet",CommandLine::IntLevel},
CommandLine::Args Args[] =
{{'q',"quiet","apt::get::quiet",CommandLine::IntLevel},
- {0,0,0,0
,0
}};
+ {0,0,0,0}};
The flags mean,
HasArg - Means the argument has a value
The flags mean,
HasArg - Means the argument has a value
@@
-34,11
+34,13
@@
ConfigFile - Means this flag should be interprited as the name of
a config file to read in at this point in option processing.
Implies HasArg.
ConfigFile - Means this flag should be interprited as the name of
a config file to read in at this point in option processing.
Implies HasArg.
+ ArbItem - Means the item is an arbitary configuration string of
+ the form item=value, where item is passed directly
+ to the configuration class.
The default, if the flags are 0 is to use Boolean
##################################################################### */
/*}}}*/
The default, if the flags are 0 is to use Boolean
##################################################################### */
/*}}}*/
-// Header section: pkglib
#ifndef PKGLIB_CMNDLINE_H
#define PKGLIB_CMNDLINE_H
#ifndef PKGLIB_CMNDLINE_H
#define PKGLIB_CMNDLINE_H
@@
-52,13
+54,15
@@
class CommandLine
{
public:
struct Args;
{
public:
struct Args;
+ struct Dispatch;
protected:
Args *ArgList;
Configuration *Conf;
protected:
Args *ArgList;
Configuration *Conf;
- bool HandleOpt(int &I,int argc,const char *argv[],const char *&Opt,Args *A);
-
+ bool HandleOpt(int &I,int argc,const char *argv[],
+ const char *&Opt,Args *A,bool PreceedeMatch = false);
+
public:
enum AFlags
public:
enum AFlags
@@
-76,6
+80,7
@@
class CommandLine
bool Parse(int argc,const char **argv);
void ShowHelp();
unsigned int FileSize() const;
bool Parse(int argc,const char **argv);
void ShowHelp();
unsigned int FileSize() const;
+ bool DispatchArg(Dispatch *List,bool NoMatch = true);
CommandLine(Args *AList,Configuration *Conf);
~CommandLine();
CommandLine(Args *AList,Configuration *Conf);
~CommandLine();
@@
-91,5
+96,11
@@
struct CommandLine::Args
inline bool end() {return ShortOpt == 0 && LongOpt == 0;};
inline bool IsBoolean() {return Flags == 0 || (Flags & (Boolean|InvBoolean)) != 0;};
};
inline bool end() {return ShortOpt == 0 && LongOpt == 0;};
inline bool IsBoolean() {return Flags == 0 || (Flags & (Boolean|InvBoolean)) != 0;};
};
-
+
+struct CommandLine::Dispatch
+{
+ const char *Match;
+ bool (*Handler)(CommandLine &);
+};
+
#endif
#endif