8#ifndef INCLUDED_UHD_UTILS_ASSERT_HAS_IPP
9#define INCLUDED_UHD_UTILS_ASSERT_HAS_IPP
13#include <boost/format.hpp>
14#include <boost/lexical_cast.hpp>
15#include <boost/foreach.hpp>
22 const std::string &what
25 std::string possible_values =
"";
27 BOOST_FOREACH(
const T &v, range){
28 if (i++ > 0) possible_values +=
", ";
29 possible_values += boost::lexical_cast<std::string>(v);
33 " %s is not a valid %s.\n"
34 " possible values are: [%s].\n"
36 % boost::lexical_cast<std::string>(value)
37 % what % possible_values
#define UHD_INLINE
Definition config.h:53
Definition build_info.hpp:13
UHD_INLINE bool has(const Range &range, const T &value)
Definition algorithm.hpp:66
void assert_has(const Range &range, const T &value, const std::string &what="unknown")
Definition assert_has.ipp:19
Definition exception.hpp:50