Class for file related options.
More...
#include <yat/utility/OptionFile.h>
Class for file related options.
This class could be used for an option with argument when the argument is a file. The class adds some convenience on top of OptionArg<std::string> by utilizing the FileUtil class. Besides setting the name and description of the option and whether the option must appear in the command line, you can declare whether the file must exist and whether it must fulfill certain file permissions. If any of these requirements are not met, an exception will be thrown during the validation phase in CommandLine::parse.
- See also
- FileUtil
◆ OptionFile()
theplu::yat::utility::OptionFile::OptionFile |
( |
CommandLine & |
cmd, |
|
|
std::string |
name, |
|
|
std::string |
desc, |
|
|
bool |
required = false , |
|
|
bool |
exist = false , |
|
|
std::string |
bits = "" |
|
) |
| |
Constructor.
- Parameters
-
cmd | Commandline Option is associated with |
name | string such as "file" for –file, "f" for -f or "f,file" for having both short and long option name |
desc | string used in help display |
required | If true option must be found in commandline or exception is thrown in validation |
exist | if true File must exist, see FileUtil::exists() |
bits | used to check permission on file, see FileUtil::permissions() |
◆ cmd()
const CommandLine& theplu::yat::utility::Option::cmd |
( |
void |
| ) |
const |
|
protectedinherited |
◆ description() [1/2]
std::string theplu::yat::utility::Option::description |
( |
void |
| ) |
const |
|
inherited |
◆ description() [2/2]
void theplu::yat::utility::Option::description |
( |
const std::string & |
description | ) |
|
|
inherited |
set description
- Since
- New in yat 0.7
◆ long_name()
std::string theplu::yat::utility::Option::long_name |
( |
void |
| ) |
const |
|
inherited |
- Returns
- long name e.g. 'help' for –help option.
◆ present()
bool theplu::yat::utility::Option::present |
( |
void |
| ) |
const |
|
inherited |
Get if option was found in cmd.
- Returns
- true if option has been detected in parsing
◆ print()
std::string theplu::yat::utility::Option::print |
( |
void |
| ) |
|
|
inherited |
print help output
This function calls the four virtual private functions print1, print2, print3, and print4. This allows an inherited class to implement one (or several) of these functions and keep the default output of the others. The default behavior is that:
◆ print_arg()
- Parameters
-
arg | string to be used in help output such as '=TARGET' in '–target=TARGET'. See print3(). |
- Since
- New in yat 0.5.
◆ required()
- Returns
- true if Option is required, i.e., if Option is not found during parsing an exception will be thrown.
◆ short_name()
char theplu::yat::utility::Option::short_name |
( |
void |
| ) |
const |
|
inherited |
- Returns
- short name e.g. 'h' for -h option.
◆ validate()
void theplu::yat::utility::Option::validate |
( |
void |
| ) |
|
|
inherited |
◆ value() [1/2]
◆ value() [2/2]
set value
- Since
- new in yat 0.5
The documentation for this class was generated from the following file: