31 #include <cmdLine/cmdArg.h>
67 const std::string& name,
68 const std::string& desc,
70 DtCmdLine::Visitor* v = NULL);
87 const std::string& name,
88 const std::string& desc,
90 DtCmdLine::CmdLineInterface& parser,
91 DtCmdLine::Visitor* v = NULL);
102 virtual bool processArg(
int* i, std::vector<std::string>& args);
125 const std::string& name,
126 const std::string& desc,
128 DtCmdLine::Visitor* v )
129 : DtCmdLine::
Arg(flag, name, desc, false, false, v),
134 const std::string& name,
135 const std::string& desc,
137 DtCmdLine::CmdLineInterface& parser,
138 DtCmdLine::Visitor* v )
139 :
Arg(flag, name, desc, false, false, v),
147 inline SwitchArg::operator
bool() {
return _value; }
152 if ( combinedSwitches[0] != Arg::flagStartString()[0] )
156 if ( combinedSwitches.substr( 0, Arg::nameStartString().length() ) ==
157 Arg::nameStartString() )
162 for (
unsigned int i = 1; i < combinedSwitches.length(); i++ )
163 if ( !_flag.empty() && combinedSwitches[i] == _flag[0] )
169 combinedSwitches[i] = Arg::blankChar();
180 if ( _ignoreable && Arg::ignoreRest() )
189 if ( argMatches( args[*i] ) )
193 throw(DtCmdLine::CmdLineParseException(
"Argument already set!", toString()));