5 namespace curl::utils {
6 slist::slist(
void *l)
noexcept:
24 std::swap(list, other.list);
29 curl_slist_free_all(
static_cast<
struct curl_slist*>(list));
36 curl_slist_free_all(
static_cast<
struct curl_slist*>(list));
41 list_ptr =
static_cast<
const curl_slist*>(list_ptr)->next;
52 return static_cast<
const curl_slist*>(list_ptr)->data;
56 return x.list_ptr == y.list_ptr;
60 return x.list_ptr != y.list_ptr;
65 return {
static_cast<
struct curl_slist*>(list)};
74 return {
static_cast<
struct curl_slist*>(list)};
86 bool slist::is_empty()
const noexcept
88 return list ==
nullptr;
91 auto slist::
push_back(
const char *str)
noexcept -> Ret_except<
void, std::bad_alloc>
93 auto temp = curl_slist_append(
static_cast<
struct curl_slist*>(list), str);
95 return {std::bad_alloc{}};