64            if constexpr (std::is_same_v<T, int>)
 
   66                if(!m_value || m_type != SQLITE_INTEGER)
 
   70                return sqlite3_value_int(m_value);
 
   72            else if constexpr (std::is_same_v<T, std::int64_t>)
 
   74                if(!m_value || m_type != SQLITE_INTEGER)
 
   78                return sqlite3_value_int64(m_value);
 
   80            else if constexpr (std::is_same_v<T, double>)
 
   82                if(!m_value || m_type != SQLITE_FLOAT)
 
   86                return sqlite3_value_double(m_value);
 
   88            else if constexpr (std::is_same_v<T, bool>)
 
   90                if(!m_value || m_type != SQLITE_INTEGER)
 
   94                return static_cast<bool>(sqlite3_value_int(m_value));
 
   96            else if constexpr (std::is_same_v<T, std::string>)
 
   98                if(!m_value || m_type != SQLITE3_TEXT)
 
  102                return { 
reinterpret_cast<const char*
>(sqlite3_value_text(m_value)), 
static_cast<size_t>(sqlite3_value_bytes(m_value)) };