28       T castGetAny (
const std::string& columnName, 
const std::any& 
value)
 
   30         if (
value.type() == 
typeid(
float))
 
   31           return std::any_cast<float> (
value);
 
   32         if (
value.type() == 
typeid(
double))
 
   33           return std::any_cast<double> (
value);
 
   34         if (
value.type() == 
typeid(
char))
 
   35           return std::any_cast<char> (
value);
 
   36         if (
value.type() == 
typeid(
int))
 
   37           return std::any_cast<int> (
value);
 
   38         if (
value.type() == 
typeid(
unsigned))
 
   39           return std::any_cast<unsigned> (
value);
 
   40         if (
value.type() == 
typeid(std::size_t))
 
   41           return std::any_cast<std::size_t> (
value);
 
   42         throw std::logic_error (columnName + 
": received unsupported input type " + boost::core::demangle(
value.type().name()) + 
", cast value or extend test handler to support it");
 
   45       std::vector<T> castGetAnyVector (
const std::string& columnName, 
const std::vector<std::any>& 
value)
 
   50           result.push_back (castGetAny<T> (columnName, 
v));
 
   54       std::shared_ptr<void> castGetAnyColumn (
const std::string& columnName, 
const std::vector<std::any>& 
value)
 
   56         auto vec = std::make_shared<std::vector<T>> (castGetAnyVector<T> (columnName, 
value));
 
   57         return std::shared_ptr<void> (
vec, 
vec->data());
 
   78       if (
type == 
typeid(
float))
 
   81       } 
else if (
type == 
typeid(
char))
 
   84       } 
else if (
type == 
typeid(
int))
 
  100         throw std::runtime_error (
 
  101           columnName + 
": column has unsupported type " +
 
  102           boost::core::demangle(
type.name()) +
 
  103           ", extend test handler to support it");