class
#include <eckit/option/CmdArgs.h>
CmdArgs
Base classes
Public types
- using usage_proc = void(*)(const std::string&name)
Constructors, destructors, conversion operators
- CmdArgs(usage_proc usage, int args_count = -1, int minimum_args = 0, bool throw_on_error = false)
-
CmdArgs(usage_proc usage,
std::
vector<Option*>& options, int args_count = -1, int minimum_args = 0, bool throw_on_error = false) -
CmdArgs(std::
function<void(const std:: string&)> usage, std:: vector<Option*>& options, int args_count = -1, int minimum_args = 0, bool throw_on_error = false) - ~CmdArgs()
Public functions
-
auto operator()(size_t) const -> const std::
string& -
auto tool() const -> const std::
string& - auto count() const -> size_t
- void configure(Configured&) const
-
auto begin() const -> std::
vector<std:: string>::const_iterator -
auto end() const -> std::
vector<std:: string>::const_iterator -
auto begin() -> std::
vector<std:: string>::iterator -
auto end() -> std::
vector<std:: string>::iterator - auto set(const Configuration& other) -> LocalConfiguration&
-
auto set(const std::
string& name, const std:: string& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const char* value) -> LocalConfiguration& override -
auto set(const std::
string& name, bool value) -> LocalConfiguration& override -
auto set(const std::
string& name, int value) -> LocalConfiguration& override -
auto set(const std::
string& name, long value) -> LocalConfiguration& override -
auto set(const std::
string& name, long long value) -> LocalConfiguration& -
auto set(const std::
string& name, size_t value) -> LocalConfiguration& override -
auto set(const std::
string& name, float value) -> LocalConfiguration& override -
auto set(const std::
string& name, double value) -> LocalConfiguration& override -
auto set(const std::
string& name, const std:: vector<int>& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const std:: vector<long>& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const std:: vector<long long>& value) -> LocalConfiguration& -
auto set(const std::
string& name, const std:: vector<size_t>& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const std:: vector<float>& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const std:: vector<double>& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const std:: vector<std:: string>& value) -> LocalConfiguration& override -
auto set(const std::
string& name, const Configuration& value) -> LocalConfiguration& -
template<typename ConfigurationT, typename = std::auto set(const std::
enable_if_t<std::is_base_of_v<Configuration, std:: decay_t<ConfigurationT>>>> string& name, const std:: vector<ConfigurationT>& value) -> LocalConfiguration& -
template<typename ConfigurationT, typename = std::auto set(const std::
enable_if_t<std::is_base_of_v<Configuration, std:: decay_t<ConfigurationT>>>> string& name, std:: initializer_list<ConfigurationT>&& value) -> LocalConfiguration& -
auto remove(const std::
string& name) -> LocalConfiguration& -
auto getBool(const std::
string& name) const -> bool -
auto getBool(const std::
string& name, const bool& defaultValue) const -> bool -
auto getInt(const std::
string& name) const -> int -
auto getInt(const std::
string& name, const int& defaultValue) const -> int -
auto getLong(const std::
string& name) const -> long -
auto getLong(const std::
string& name, const long& defaultValue) const -> long -
auto getUnsigned(const std::
string& name) const -> std:: size_t -
auto getUnsigned(const std::
string& name, const std:: size_t& defaultValue) const -> std:: size_t -
auto getInt32(const std::
string& name) const -> std:: int32_t -
auto getInt32(const std::
string& name, const std:: int32_t& defaultValue) const -> std:: int32_t -
auto getInt64(const std::
string& name) const -> std:: int64_t -
auto getInt64(const std::
string& name, const std:: int64_t& defaultValue) const -> std:: int64_t -
auto getFloat(const std::
string& name) const -> float -
auto getFloat(const std::
string& name, const float& defaultValue) const -> float -
auto getDouble(const std::
string& name) const -> double -
auto getDouble(const std::
string& name, const double& defaultValue) const -> double -
auto getString(const std::
string& name) const -> std:: string -
auto getString(const std::
string& name, const std:: string& defaultValue) const -> std:: string -
auto getIntVector(const std::
string& name) const -> std:: vector<int> -
auto getIntVector(const std::
string& name, const std:: vector<int>& defaultValue) const -> std:: vector<int> -
auto getLongVector(const std::
string& name) const -> std:: vector<long> -
auto getLongVector(const std::
string& name, const std:: vector<long>& defaultValue) const -> std:: vector<long> -
auto getUnsignedVector(const std::
string& name) const -> std:: vector<std:: size_t> -
auto getUnsignedVector(const std::
string& name, const std:: vector<std:: size_t>& defaultValue) const -> std:: vector<std:: size_t> -
auto getInt32Vector(const std::
string& name) const -> std:: vector<std:: int32_t> -
auto getInt32Vector(const std::
string& name, const std:: vector<std:: int32_t>& defaultValue) const -> std:: vector<std:: int32_t> -
auto getInt64Vector(const std::
string& name) const -> std:: vector<std:: int64_t> -
auto getInt64Vector(const std::
string& name, const std:: vector<std:: int64_t>& defaultValue) const -> std:: vector<std:: int64_t> -
auto getFloatVector(const std::
string& name) const -> std:: vector<float> -
auto getFloatVector(const std::
string& name, const std:: vector<float>& defaultValue) const -> std:: vector<float> -
auto getDoubleVector(const std::
string& name) const -> std:: vector<double> -
auto getDoubleVector(const std::
string& name, const std:: vector<double>& defaultValue) const -> std:: vector<double> -
auto getStringVector(const std::
string& name) const -> std:: vector<std:: string> -
auto getStringVector(const std::
string& name, const std:: vector<std:: string>& defaultValue) const -> std:: vector<std:: string> - auto empty() const -> bool
-
auto keys() const -> std::
vector<std:: string> -
auto getSubConfigurations(const std::
string& name) const -> std:: vector<LocalConfiguration> -
auto getSubConfigurations() const -> std::
vector<LocalConfiguration> -
auto getSubConfiguration(const std::
string& name) const -> LocalConfiguration - auto separator() const -> char
-
auto has(const std::
string& name) const -> bool override -
auto get(const std::
string& name, std:: string& value) const -> bool override -
auto get(const std::
string& name, bool& value) const -> bool override -
auto get(const std::
string& name, int& value) const -> bool override -
auto get(const std::
string& name, long& value) const -> bool override -
auto get(const std::
string& name, long long& value) const -> bool override -
auto get(const std::
string& name, std:: size_t& value) const -> bool override -
auto get(const std::
string& name, float& value) const -> bool override -
auto get(const std::
string& name, double& value) const -> bool override -
auto get(const std::
string& name, std:: vector<int>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<long>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<long long>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<std:: size_t>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<float>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<double>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<std:: string>& value) const -> bool override -
auto get(const std::
string& name, std:: vector<LocalConfiguration>&) const -> bool -
auto get(const std::
string& name, LocalConfiguration&) const -> bool - auto get() const -> const Value&
-
auto get(const std::
string& name, size_t& value) const -> bool pure virtual -
auto get(const std::
string& name, std:: vector<size_t>& value) const -> bool pure virtual -
void hash(eckit::
Hash&) const virtual -
auto isSubConfiguration(const std::
string& name) const -> bool -
auto isIntegral(const std::
string& name) const -> bool -
auto isBoolean(const std::
string& name) const -> bool -
auto isFloatingPoint(const std::
string& name) const -> bool -
auto isString(const std::
string& name) const -> bool -
auto isList(const std::
string& name) const -> bool -
auto isSubConfigurationList(const std::
string& name) const -> bool -
auto isIntegralList(const std::
string& name) const -> bool -
auto isBooleanList(const std::
string& name) const -> bool -
auto isFloatingPointList(const std::
string& name) const -> bool -
auto isStringList(const std::
string& name) const -> bool -
auto isNull(const std::
string& name) const -> bool -
template<typename T>auto isConvertible(const std::
string& name) const -> bool -
template<typename T>auto isConvertible(const std::
string& name, T&) const -> bool
Private functions
-
void print(std::
ostream&) const override
Function documentation
eckit:: option:: CmdArgs:: CmdArgs(usage_proc usage,
std:: vector<Option*>& options,
int args_count = -1,
int minimum_args = 0,
bool throw_on_error = false)
Initialise argument parser with a list of options
LocalConfiguration& eckit:: option:: CmdArgs:: set(const Configuration& other)
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: string& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const char* value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
bool value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
int value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
long value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
long long value)
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
size_t value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
float value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
double value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<int>& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<long>& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<long long>& value)
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<size_t>& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<float>& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<double>& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<std:: string>& value) override
#include <eckit/config/LocalConfiguration.h>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const Configuration& value)
#include <eckit/config/LocalConfiguration.h>
#include <eckit/config/LocalConfiguration.h>
template<typename ConfigurationT, typename = std:: enable_if_t<std::is_base_of_v<Configuration, std:: decay_t<ConfigurationT>>>>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
const std:: vector<ConfigurationT>& value)
#include <eckit/config/LocalConfiguration.h>
template<typename ConfigurationT, typename = std:: enable_if_t<std::is_base_of_v<Configuration, std:: decay_t<ConfigurationT>>>>
LocalConfiguration& eckit:: option:: CmdArgs:: set(const std:: string& name,
std:: initializer_list<ConfigurationT>&& value)
LocalConfiguration& eckit:: option:: CmdArgs:: remove(const std:: string& name)
#include <eckit/config/LocalConfiguration.h>
bool eckit:: option:: CmdArgs:: getBool(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: getBool(const std:: string& name,
const bool& defaultValue) const
#include <eckit/config/Configuration.h>
int eckit:: option:: CmdArgs:: getInt(const std:: string& name) const
#include <eckit/config/Configuration.h>
int eckit:: option:: CmdArgs:: getInt(const std:: string& name,
const int& defaultValue) const
#include <eckit/config/Configuration.h>
long eckit:: option:: CmdArgs:: getLong(const std:: string& name) const
#include <eckit/config/Configuration.h>
long eckit:: option:: CmdArgs:: getLong(const std:: string& name,
const long& defaultValue) const
#include <eckit/config/Configuration.h>
std:: size_t eckit:: option:: CmdArgs:: getUnsigned(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: size_t eckit:: option:: CmdArgs:: getUnsigned(const std:: string& name,
const std:: size_t& defaultValue) const
#include <eckit/config/Configuration.h>
std:: int32_t eckit:: option:: CmdArgs:: getInt32(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: int32_t eckit:: option:: CmdArgs:: getInt32(const std:: string& name,
const std:: int32_t& defaultValue) const
#include <eckit/config/Configuration.h>
std:: int64_t eckit:: option:: CmdArgs:: getInt64(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: int64_t eckit:: option:: CmdArgs:: getInt64(const std:: string& name,
const std:: int64_t& defaultValue) const
#include <eckit/config/Configuration.h>
float eckit:: option:: CmdArgs:: getFloat(const std:: string& name) const
#include <eckit/config/Configuration.h>
float eckit:: option:: CmdArgs:: getFloat(const std:: string& name,
const float& defaultValue) const
#include <eckit/config/Configuration.h>
double eckit:: option:: CmdArgs:: getDouble(const std:: string& name) const
#include <eckit/config/Configuration.h>
double eckit:: option:: CmdArgs:: getDouble(const std:: string& name,
const double& defaultValue) const
#include <eckit/config/Configuration.h>
std:: string eckit:: option:: CmdArgs:: getString(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: string eckit:: option:: CmdArgs:: getString(const std:: string& name,
const std:: string& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<int> eckit:: option:: CmdArgs:: getIntVector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<int> eckit:: option:: CmdArgs:: getIntVector(const std:: string& name,
const std:: vector<int>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<long> eckit:: option:: CmdArgs:: getLongVector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<long> eckit:: option:: CmdArgs:: getLongVector(const std:: string& name,
const std:: vector<long>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<std:: size_t> eckit:: option:: CmdArgs:: getUnsignedVector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<std:: size_t> eckit:: option:: CmdArgs:: getUnsignedVector(const std:: string& name,
const std:: vector<std:: size_t>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<std:: int32_t> eckit:: option:: CmdArgs:: getInt32Vector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<std:: int32_t> eckit:: option:: CmdArgs:: getInt32Vector(const std:: string& name,
const std:: vector<std:: int32_t>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<std:: int64_t> eckit:: option:: CmdArgs:: getInt64Vector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<std:: int64_t> eckit:: option:: CmdArgs:: getInt64Vector(const std:: string& name,
const std:: vector<std:: int64_t>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<float> eckit:: option:: CmdArgs:: getFloatVector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<float> eckit:: option:: CmdArgs:: getFloatVector(const std:: string& name,
const std:: vector<float>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<double> eckit:: option:: CmdArgs:: getDoubleVector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<double> eckit:: option:: CmdArgs:: getDoubleVector(const std:: string& name,
const std:: vector<double>& defaultValue) const
#include <eckit/config/Configuration.h>
std:: vector<std:: string> eckit:: option:: CmdArgs:: getStringVector(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<std:: string> eckit:: option:: CmdArgs:: getStringVector(const std:: string& name,
const std:: vector<std:: string>& defaultValue) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: empty() const
#include <eckit/config/Configuration.h>
std:: vector<std:: string> eckit:: option:: CmdArgs:: keys() const
#include <eckit/config/Configuration.h>
std:: vector<LocalConfiguration> eckit:: option:: CmdArgs:: getSubConfigurations(const std:: string& name) const
#include <eckit/config/Configuration.h>
std:: vector<LocalConfiguration> eckit:: option:: CmdArgs:: getSubConfigurations() const
#include <eckit/config/Configuration.h>
LocalConfiguration eckit:: option:: CmdArgs:: getSubConfiguration(const std:: string& name) const
#include <eckit/config/Configuration.h>
char eckit:: option:: CmdArgs:: separator() const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: has(const std:: string& name) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: string& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
bool& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
int& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
long& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
long long& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: size_t& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
float& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
double& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<int>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<long>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<long long>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<std:: size_t>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<float>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<double>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<std:: string>& value) const override
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<LocalConfiguration>&) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
LocalConfiguration&) const
#include <eckit/config/Configuration.h>
const Value& eckit:: option:: CmdArgs:: get() const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
size_t& value) const pure virtual
#include <eckit/config/Parametrisation.h>
bool eckit:: option:: CmdArgs:: get(const std:: string& name,
std:: vector<size_t>& value) const pure virtual
#include <eckit/config/Parametrisation.h>
void eckit:: option:: CmdArgs:: hash(eckit:: Hash&) const virtual
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isSubConfiguration(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isIntegral(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isBoolean(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isFloatingPoint(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isString(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isList(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isSubConfigurationList(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isIntegralList(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isBooleanList(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isFloatingPointList(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isStringList(const std:: string& name) const
#include <eckit/config/Configuration.h>
bool eckit:: option:: CmdArgs:: isNull(const std:: string& name) const
#include <eckit/config/Configuration.h>
#include <eckit/config/Configuration.h>
template<typename T>
bool eckit:: option:: CmdArgs:: isConvertible(const std:: string& name) const
#include <eckit/config/Configuration.h>
template<typename T>
bool eckit:: option:: CmdArgs:: isConvertible(const std:: string& name,
T&) const