void CommandLineHandlerBase::parse(const int argc, const char* argv[], SuperLogger& logger) { impl->m_executable_name = bf::path(argv[0]).filename().string(); impl->m_parser.parse(argc, argv, impl->m_parse_results); if (impl->m_help.is_set()) { print_program_usage(impl->m_executable_name.c_str(), logger); exit(EXIT_SUCCESS); } if (impl->m_message_coloring.is_set()) logger.enable_message_coloring(); if (impl->m_message_verbosity.is_set()) logger.set_verbosity_level_from_string(impl->m_message_verbosity.value().c_str()); }