Class error_with_option_name
boost::program_options::error_with_option_name
Synopsis
Description
Базовый класс для большинства исключений в библиотеке.
Заменяет значения для заполнителей имени параметра в шаблоне для создания читаемого сообщения об ошибке человека
Заполнители окружены знаками %: пример % Версия для бедняков::формат
Если имя параметра отсутствует, выполняйте замены по умолчанию, чтобы уродливые заполнители никогда не оставались на месте.
Варианты отображаются в «канонической» форме. Это наиболее недвусмысленная формас парсингоми будет соответствовать Option_description::format_name() то есть тому, что показано print_usage().
«Каноническая» форма зависит от того, указана ли опция в короткой или длинной форме, с использованием тире или слэшей или без префикса (из файла конфигурации).
error_with_option_name
public
construct/copy/destruct
- <
error_with_option_name(conststd::string&template_,
conststd::string&option_name="",
conststd::string&original_token="",
intoption_style=0);
>
- <
~error_with_option_name();
>gcc говорит, что спецификация броска на dtor ослаблена без этой линии.
error_with_option_name
public member functions
- <
voidset_substitute(conststd::string¶meter_name,
conststd::string&value);
>Заменить параметр_name->value для создания сообщения об ошибке из шаблона ошибки
- <
voidset_substitute_default(conststd::string¶meter_name,
conststd::string&from,conststd::string&to);
>Если параметр отсутствует, то сделайте из->заменить
.
- <
voidadd_context(conststd::string&option_name,
conststd::string&original_token,intoption_style);
>Добавить контекст к исключению
- <
voidset_prefix(intoption_style);
>
- <
virtualvoidset_option_name(conststd::string&option_name);
>Опрокинутый<error_with_no_option_name
>
- <
std::stringget_option_name()const;
>
- <
voidset_original_token(conststd::string&original_token);
>
- <
virtualconstchar*what()const;
>Создает ошибку_сообщение на лету В настоящее время тонкая обертка для заменителя_заместителей()
error_with_option_name
protected member functions
- <
virtualvoidsubstitute_placeholders(conststd::string&error_template)const;
>Делает все замены по шаблону
- <
voidreplace_token(conststd::string&from,conststd::string&to)const;
>
- <
std::stringget_canonical_option_name()const;
>Наименование опции построения в соответствии с соответствующим стилем префикса: Длинная тире или короткая коса и т.д.
- <
std::stringget_canonical_option_prefix()const;
>
error_with_option_name
public
public data members
- <
std::stringm_error_template;
>Шаблон с заполнителями