16 if constexpr (std::is_same_v<T, std::string> || std::is_same_v<T, std::string_view> ||
17 std::is_same_v<T, char> || std::is_same_v<T, char16_t> ||
18 std::is_same_v<T, char32_t>) {
20 }
else if constexpr (std::is_same_v<T, bool>) {
22 target = (value ==
"1" || value ==
"true" || value ==
"TRUE" || value ==
"True" ||
23 value ==
"t" || value ==
"T" || value ==
"yes" || value ==
"YES" || value ==
"Y");
24 }
else if constexpr (std::is_integral_v<T>) {
29 target =
static_cast<T
>(std::stoll(value));
31 }
else if constexpr (std::is_floating_point_v<T>) {
35 target = std::stod(value);
38 static_assert(std::is_same_v<T, bool>,
"Unsupported type conversion");
void apply_tuple_assignment(Tuple &tuple, const std::vector< std::string > &row, std::index_sequence< Indices... >)
Helper function to perform the tuple assignment with index sequence.