7#ifndef ARGS__ARG_IFACE_HPP__INCLUDED
8#define ARGS__ARG_IFACE_HPP__INCLUDED
virtual ArgIface * findArgument(const String &name)=0
virtual const String & valueSpecifier() const =0
virtual bool isRequired() const =0
virtual void process(Context &context)=0
Process argument's staff, for example take values from context.
virtual String name() const =0
virtual const String & longDescription() const =0
virtual ArgType type() const =0
virtual const String & argumentName() const =0
virtual bool isWithValue() const =0
virtual void setCmdLine(CmdLine *cmdLine)
Set command line parser.
virtual void checkCorrectnessAfterParsing() const =0
Check correctness of the argument after parsing.
virtual const String & flag() const =0
CmdLine * cmdLine() const
virtual const String & description() const =0
virtual void clear()=0
Clear state of the argument.
virtual bool isDefined() const =0
virtual bool isMisspelledName(const String &name, StringList &possibleNames) const =0
virtual const String & defaultValue() const
virtual void checkCorrectnessBeforeParsing(StringList &flags, StringList &names) const =0
Check correctness of the argument before parsing.
CmdLine is class that holds all rguments and parse command line arguments in the correspondence with ...
Command in the command line interface.
Context is a list of words in the command line that user presented with interface for interacting wit...
Interface for the groups.
std::string String
String type.
ArgType
Type of the argument.
std::vector< String > StringList
List of strings.
#define DISABLE_COPY(Class)
Macro for disabling copy.