Я хочу максимально заменить внешние библиотеки (такие как boost)их эквивалентами в стандартном C++, если они существуют и это возможно, чтобы минимизировать зависимости, поэтому мне интересно, существует ли безопасный способ конвертации boost::system::error_code
к std::error_code
. Пример псевдокода:
void func(const std::error_code & err)
{
if(err) {
//error
} else {
//success
}
}
boost::system::error_code boost_err = foo(); //foo() returns a boost::system::error_code
std::error_code std_err = magic_code_here; //convert boost_err to std::error_code here
func(std_err);
Самое главное, это не точно такая же ошибка, а просто настолько близкая к возможной и, наконец, ошибка это или нет. Есть умные решения?
Заранее спасибо!