Sharg 1.1.2-rc.1
The argument parser for bio-c++ tools.
|
A validator that checks if a given path is a valid input directory. More...
#include <sharg/validators.hpp>
Public Types | |
using | option_value_type |
Type of values that are tested by validator. | |
Public Types inherited from sharg::file_validator_base | |
using | option_value_type = std::string |
Type of values that are tested by validator. | |
Public Member Functions | |
virtual void | operator() (std::filesystem::path const &dir) const override |
Tests whether path is an existing directory and is readable. | |
std::string | get_help_page_message () const |
Returns a message that can be appended to the (positional) options help page info. | |
Constructors, destructor and assignment | |
input_directory_validator ()=default | |
Defaulted. | |
input_directory_validator (input_directory_validator const &)=default | |
Defaulted. | |
input_directory_validator (input_directory_validator &&)=default | |
Defaulted. | |
input_directory_validator & | operator= (input_directory_validator const &)=default |
Defaulted. | |
input_directory_validator & | operator= (input_directory_validator &&)=default |
Defaulted. | |
virtual | ~input_directory_validator ()=default |
Virtual Destructor. | |
file_validator_base ()=default | |
Defaulted. | |
file_validator_base (file_validator_base const &)=default | |
Defaulted. | |
file_validator_base (file_validator_base &&)=default | |
Defaulted. | |
Public Member Functions inherited from sharg::file_validator_base | |
template<std::ranges::forward_range range_type> requires (std::convertible_to<std::ranges::range_value_t<range_type>, std::filesystem::path const &> && !std::convertible_to<range_type, std::filesystem::path const &>) | |
void | operator() (range_type const &v) const |
Tests whether every path in list v passes validation. See operator()(option_value_type const & value) for further information. | |
file_validator_base ()=default | |
Defaulted. | |
file_validator_base (file_validator_base const &)=default | |
Defaulted. | |
file_validator_base (file_validator_base &&)=default | |
Defaulted. | |
file_validator_base & | operator= (file_validator_base const &)=default |
Defaulted. | |
file_validator_base & | operator= (file_validator_base &&)=default |
Defaulted. | |
virtual | ~file_validator_base ()=default |
Additional Inherited Members | |
Protected Member Functions inherited from sharg::file_validator_base | |
void | validate_filename (std::filesystem::path const &path) const |
Validates the given filename path based on the specified extensions. | |
void | validate_readability (std::filesystem::path const &path) const |
Checks if the given path is readable. | |
void | validate_writeability (std::filesystem::path const &path) const |
Checks if the given path is writable. | |
std::string | valid_extensions_help_page_message () const |
Returns the information of valid file extensions. | |
bool | case_insensitive_string_ends_with (std::string_view str, std::string_view suffix) const |
Helper function that checks if a string is a suffix of another string. Case insensitive. | |
Protected Attributes inherited from sharg::file_validator_base | |
std::vector< std::string > | extensions {} |
Stores the extensions. | |
std::string | extensions_str {} |
The extension range as a std:;string for pretty printing. | |
A validator that checks if a given path is a valid input directory.
The class acts as a functor that throws a sharg::validation_error exception whenever a given directory (std::filesystem::path) does not exist, the specified path is not a directory, or if the directory is not readable.
|
inline |
Returns a message that can be appended to the (positional) options help page info.
|
inlineoverridevirtual |
Tests whether path is an existing directory and is readable.
dir | The input value to check. |
sharg::validation_error | if the validation process failed. Might be nested with std::filesystem::filesystem_error on unhandled OS API errors. |
Implements sharg::file_validator_base.