26 #ifndef TCLAP_VALUE_ARGUMENT_H 27 #define TCLAP_VALUE_ARGUMENT_H 111 const std::string& name,
112 const std::string& desc,
115 const std::string& typeDesc,
144 const std::string& name,
145 const std::string& desc,
148 const std::string& typeDesc,
175 const std::string& name,
176 const std::string& desc,
205 const std::string& name,
206 const std::string& desc,
221 virtual bool processArg(
int* i, std::vector<std::string>& args);
242 virtual std::string
shortID(
const std::string& val =
"val")
const;
248 virtual std::string
longID(
const std::string& val =
"val")
const;
250 virtual void reset() ;
266 const std::string& name,
267 const std::string& desc,
270 const std::string& typeDesc,
272 :
Arg(flag, name, desc, req, true, v),
281 const std::string& name,
282 const std::string& desc,
285 const std::string& typeDesc,
288 :
Arg(flag, name, desc, req, true, v),
299 const std::string& name,
300 const std::string& desc,
305 :
Arg(flag, name, desc, req, true, v),
314 const std::string& name,
315 const std::string& desc,
321 :
Arg(flag, name, desc, req, true, v),
343 std::string flag = args[*i];
345 std::string value =
"";
367 if ( static_cast<unsigned int>(*i) < args.size() )
390 static_cast<void>(val);
400 static_cast<void>(val);
416 +
"' does not meet constraint: " const T & getValue() const
Returns the value of the argument.
virtual bool argMatches(const std::string &s) const
A method that tests whether a string matches this argument.
bool _alreadySet
Indicates whether the argument has been set.
void _extractValue(const std::string &val)
Extracts the value from the string.
A virtual base class that defines the essential data for all arguments.
Thrown from CmdLine when the arguments on the command line are not properly specified, e.g.
A value like argument value type is a value that can be set using operator>>.
virtual void reset()
Clears the Arg object and allows it to be reused by new command lines.
bool _xorSet
Indicates that the arg was set as part of an XOR and not on the command line.
The basic labeled argument that parses a value.
virtual std::string longID(const std::string &valueId="val") const
Returns a long ID for the usage.
static char delimiter()
The delimiter that separates an argument flag/name from the value.
virtual std::string shortID(const std::string &val="val") const
Specialization of shortID.
T _value
The value parsed from the command line.
The interface that defines the interaction between the Arg and Constraint.
void _checkWithVisitor() const
Performs the special handling described by the Visitor.
Constraint< T > * _constraint
A Constraint this Arg must conform to.
A base class that defines the interface for visitors.
virtual std::string shortID(const std::string &valueId="val") const
Returns a short ID for the usage.
The base class that manages the command line definition and passes along the parsing to the appropria...
virtual std::string toString() const
Returns a simple string representation of the argument.
virtual void add(Arg &a)=0
Adds an argument to the list of arguments to be parsed.
bool _ignoreable
Whether this argument can be ignored, if desired.
std::string _typeDesc
A human readable description of the type to be parsed.
static bool ignoreRest()
Whether to ignore the rest.
void ExtractValue(T &destVal, const std::string &strVal, ValueLike vl)
Thrown from within the child Arg classes when it fails to properly parse the argument it has been pas...
T _default
Used to support the reset() method so that ValueArg can be reset to their constructed value...
virtual bool processArg(int *i, std::vector< std::string > &args)
Handles the processing of the argument.
bool _hasBlanks(const std::string &s) const
Checks whether a given string has blank chars, indicating that it is a combined SwitchArg.
virtual std::string longID(const std::string &val="val") const
Specialization of longID.
std::string error() const
Returns the error text.
virtual void reset()
Clears the Arg object and allows it to be reused by new command lines.
virtual void trimFlag(std::string &flag, std::string &value) const
Trims a value off of the flag.
ValueArg(const std::string &flag, const std::string &name, const std::string &desc, bool req, T value, const std::string &typeDesc, Visitor *v=NULL)
Labeled ValueArg constructor.