Bayonne2 / Common C++ 2 Framework
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Data Fields
CommandOptionRest Class Reference

It only makes sense to have a single one of these set and it is exclusive with CommandOptionCollect. More...

#include <cmdoptns.h>

Inheritance diagram for CommandOptionRest:
Inheritance graph
[legend]
Collaboration diagram for CommandOptionRest:
Collaboration graph
[legend]

Public Types

enum  OptionType { hasArg, noArg, trailing, collect }
 OptionType is for denoting what type of option this is, with an arg, without an arg or the trailing args. More...
 

Public Member Functions

 CommandOptionRest (const char *inOptionName, const char *inOptionLetter, const char *inDescription, bool inRequired=false, CommandOption **ppNext=&defaultCommandOptionList)
 CommandOptionRest contructor. More...
 
virtual void foundOption (CommandOptionParse *cop, const char *value=0)
 foundOption is called by the CommandOptionParse object during the parsing of the command line options. More...
 
virtual void foundOption (CommandOptionParse *cop, const char **value, int num)
 foundOption is called by the CommandOptionParse object during the parsing of the command line options. More...
 
virtual bool hasValue ()
 For fields with the required flag set, this method is used to determine if the Option has satisfied it's required status. More...
 
virtual void parseDone (CommandOptionParse *cop)
 Once parsing of command line options is complete, this method is called. More...
 
virtual void performTask (CommandOptionParse *cop)
 Once CommandOption objects have completed parsing and there are no errors they may have some specific tasks to perform. More...
 

Data Fields

const char ** values
 Array of list of values collected for this option. More...
 
int numValue
 Number of values in the values array. More...
 
const char * optionName
 Long option name, these will be preceded with "--" on the command line. More...
 
const char * optionLetter
 option letter, these will be preceded with "-" on the command line. More...
 
const char * description
 A short description of the option for Usage messages. More...
 
OptionType optionType
 This command option's OptionType. More...
 
bool required
 True if this parameter is required. More...
 
CommandOptionnext
 This next CommandOption in this list of options or nil if no more options exist. More...
 

Detailed Description

It only makes sense to have a single one of these set and it is exclusive with CommandOptionCollect.

It is the option that takes the rest of the command line options that are not part of any other options. e.g. "strace -ofile command arg1 arg2". The "command arg1 arg2" part is placed in objects of this class.

CommandOption to take the rest of the command line

Definition at line 292 of file cmdoptns.h.

Member Enumeration Documentation

enum CommandOption::OptionType
inherited

OptionType is for denoting what type of option this is, with an arg, without an arg or the trailing args.

Option type

Enumerator
hasArg 

This option is associated with a value.

noArg 

This option is a flag only.

trailing 

Remaining of the command line arguments.

collect 

Collect values that are not a value to an option.

Definition at line 103 of file cmdoptns.h.

Constructor & Destructor Documentation

CommandOptionRest::CommandOptionRest ( const char *  inOptionName,
const char *  inOptionLetter,
const char *  inDescription,
bool  inRequired = false,
CommandOption **  ppNext = &defaultCommandOptionList 
)

CommandOptionRest contructor.

This sets the optionType for this object to Trailing.

Parameters
inOptionNamelong option name
inOptionLettershort letter name
inDescriptionshort description of the option
inRequiredtrue if option is required
ppNextthe linked list header

Member Function Documentation

virtual void CommandOptionWithArg::foundOption ( CommandOptionParse cop,
const char *  value = 0 
)
virtualinherited

foundOption is called by the CommandOptionParse object during the parsing of the command line options.

Parameters
coppointer to the command option parser
valuethe value of this option

Reimplemented from CommandOption.

virtual void CommandOptionWithArg::foundOption ( CommandOptionParse cop,
const char **  value,
int  num 
)
virtualinherited

foundOption is called by the CommandOptionParse object during the parsing of the command line options.

Parameters
coppointer to the command option parser
valuean array of values of this option
numnumber of values in the array

Reimplemented from CommandOption.

virtual bool CommandOptionWithArg::hasValue ( )
virtualinherited

For fields with the required flag set, this method is used to determine if the Option has satisfied it's required status.

The default methods simply returns true if any values have been found. This could be specialized to return true based on some other criteria.

Reimplemented from CommandOption.

virtual void CommandOption::parseDone ( CommandOptionParse cop)
virtualinherited

Once parsing of command line options is complete, this method is called.

This can be used to perform last minute checks on the options collected.

Parameters
coppointer to the command option parser
virtual void CommandOption::performTask ( CommandOptionParse cop)
virtualinherited

Once CommandOption objects have completed parsing and there are no errors they may have some specific tasks to perform.

PerformTask must return.

Parameters
coppointer to the command option parser

Field Documentation

const char* CommandOption::description
inherited

A short description of the option for Usage messages.

e.g. Usage: mycommand : blah -f, –file <DESCRIPTION here>

Definition at line 96 of file cmdoptns.h.

CommandOption* CommandOption::next
inherited

This next CommandOption in this list of options or nil if no more options exist.

Definition at line 137 of file cmdoptns.h.

int CommandOptionWithArg::numValue
inherited

Number of values in the values array.

Definition at line 225 of file cmdoptns.h.

const char* CommandOption::optionLetter
inherited

option letter, these will be preceded with "-" on the command line.

e.g. -f foo.x

Definition at line 89 of file cmdoptns.h.

const char* CommandOption::optionName
inherited

Long option name, these will be preceded with "--" on the command line.

e.g. –file foo.x

Definition at line 83 of file cmdoptns.h.

OptionType CommandOption::optionType
inherited

This command option's OptionType.

Definition at line 125 of file cmdoptns.h.

bool CommandOption::required
inherited

True if this parameter is required.

If the parameter is not supplied and required is true, an error will be flagged in the option processor.

Definition at line 131 of file cmdoptns.h.

const char** CommandOptionWithArg::values
inherited

Array of list of values collected for this option.

Definition at line 220 of file cmdoptns.h.


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