wibble::commandline::Option Class Reference

#include <options.h>

Inheritance diagram for wibble::commandline::Option:
[legend]
Collaboration diagram for wibble::commandline::Option:
[legend]

List of all members.


Detailed Description

Interface for a parser for one commandline option.

Public Member Functions

 Option ()
virtual ~Option ()
bool isSet () const
const std::string & name () const
void addAlias (char c)
void addAlias (const std::string &str)
const std::string & fullUsage () const
 Return a full usage message including all the aliases for this option.
std::string fullUsageForMan () const

Public Attributes

std::vector< char > shortNames
std::vector< std::string > longNames
std::string usage
std::string description
bool hidden

Protected Member Functions

 Option (const std::string &name)
 Option (const std::string &name, char shortName, const std::string &longName, const std::string &usage=std::string(), const std::string &description=std::string())
virtual ArgList::iterator parse (ArgList &list, ArgList::iterator begin)=0
 Parse the next commandline parameter after the short form of the command has been found.
virtual bool parse (const std::string &param)=0
 Parse the commandline parameter of a long commandline switch.

Protected Attributes

bool m_isset

Friends

class OptionGroup
class Engine

Constructor & Destructor Documentation

wibble::commandline::Option::Option ( const std::string &  name  )  [inline, protected]

wibble::commandline::Option::Option ( const std::string &  name,
char  shortName,
const std::string &  longName,
const std::string &  usage = std::string(),
const std::string &  description = std::string() 
) [inline, protected]

References longNames, and shortNames.

wibble::commandline::Option::Option (  ) 

virtual wibble::commandline::Option::~Option (  )  [inline, virtual]


Member Function Documentation

virtual ArgList::iterator wibble::commandline::Option::parse ( ArgList list,
ArgList::iterator  begin 
) [protected, pure virtual]

Parse the next commandline parameter after the short form of the command has been found.

It may or may not remove the parameter from the list, depending on if the option wants a value or not.

Signal that the option has been found, with the given argument (or 0 if no argument).

Returns:
true if it used the argument, else false

Implemented in wibble::commandline::BoolOption, wibble::commandline::SingleOption< T >, wibble::commandline::VectorOption< T >, and wibble::commandline::SingleOption< wibble::commandline::Int >.

virtual bool wibble::commandline::Option::parse ( const std::string &  param  )  [protected, pure virtual]

bool wibble::commandline::Option::isSet (  )  const [inline]

const std::string& wibble::commandline::Option::name (  )  const [inline]

void wibble::commandline::Option::addAlias ( char  c  )  [inline]

void wibble::commandline::Option::addAlias ( const std::string &  str  )  [inline]

References longNames.

const std::string & wibble::commandline::Option::fullUsage (  )  const

Return a full usage message including all the aliases for this option.

References longNames, and shortNames.

std::string wibble::commandline::Option::fullUsageForMan (  )  const

References longNames, and shortNames.


Friends And Related Function Documentation

friend class OptionGroup [friend]

friend class Engine [friend]


Member Data Documentation

std::vector<std::string> wibble::commandline::Option::longNames


The documentation for this class was generated from the following files:

Generated on Wed Aug 20 11:07:33 2008 for wibble by  doxygen 1.5.6