Kurlyk
Loading...
Searching...
No Matches
utils.hpp
Go to the documentation of this file.
1#pragma once
2#ifndef _KURLYK_UTILIS_HPP_INCLUDED
3#define _KURLYK_UTILIS_HPP_INCLUDED
4
7
8#include <iostream>
9#include <string>
10#include <unordered_map>
11#include <vector>
12#include <sstream>
13#include <algorithm>
14#include <regex>
15#include <cctype>
16#include <system_error>
17
18#ifdef KURLYK_USE_CURL
19#include <curl/curl.h>
21#endif
22
23#ifdef KURLYK_WEBSOCKET_SUPPORT
25#endif
26
29
30#include "utils/EventQueue.hpp"
32
33#ifdef _WIN32
34// For Windows systems
35#include <direct.h>
36#include <windows.h>
37#include <locale>
38#include <codecvt>
39#else
40// For POSIX systems
41#include <unistd.h>
42#include <limits.h>
43#include <dirent.h>
44#include <sys/stat.h>
45#include <errno.h>
46#endif
47
49#include "utils/http_parser.hpp"
50#include "utils/http_utils.hpp"
51#include "utils/url_utils.hpp"
52#include "utils/email_utils.hpp"
54#include "utils/print_utils.hpp"
55#include "utils/path_utils.hpp"
58
59#endif // _KURLYK_UTILIS_HPP_INCLUDED
Defines case-insensitive utilities and data structures for HTTP headers, cookies, and query parameter...
Declares the ClientError enumeration and error category for internal client-side failures.
Defines the CurlErrorCategory class for handling CURL error codes.
Defines the EventQueue class for managing a thread-safe event queue.
Defines the HttpErrorCategory class for interpreting HTTP status codes as std::error_code values.
Defines the WebSocketError enumeration and corresponding error category for WebSocket-level failures.
Provides utility functions for validating email address formats.
Provides character encoding conversion utilities (e.g., UTF-8 to ANSI).
Provides utility functions for parsing HTTP headers and cookies.
Provides utility functions for working with HTTP headers, cookies, and query strings.
Provides platform-specific utilities for obtaining paths and file locations.
Provides functions for percent-encoding and decoding strings.
Provides thread-safe console output utilities.
Provides basic string manipulation utilities.
Provides utility functions for parsing and validating URLs and their components.
Provides functions for converting User-Agent strings to sec-ch-ua format.