File indexing completed on 2025-04-01 08:44:25
0001
0002
0003
0004
0005
0006
0007 #pragma once
0008
0009
0010 #include "Macros.hpp"
0011
0012
0013 #include <string>
0014
0015
0016
0017 #ifdef CLI11_CPP17
0018 #include <string_view>
0019 #endif
0020
0021 #if defined CLI11_HAS_FILESYSTEM && CLI11_HAS_FILESYSTEM > 0
0022 #include <filesystem>
0023 #include <string_view> // NOLINT(build/include)
0024 #endif
0025
0026
0027 namespace CLI {
0028
0029
0030
0031 CLI11_INLINE std::string narrow(const std::wstring &str);
0032 CLI11_INLINE std::string narrow(const wchar_t *str);
0033 CLI11_INLINE std::string narrow(const wchar_t *str, std::size_t size);
0034
0035
0036 CLI11_INLINE std::wstring widen(const std::string &str);
0037 CLI11_INLINE std::wstring widen(const char *str);
0038 CLI11_INLINE std::wstring widen(const char *str, std::size_t size);
0039
0040 #ifdef CLI11_CPP17
0041 CLI11_INLINE std::string narrow(std::wstring_view str);
0042 CLI11_INLINE std::wstring widen(std::string_view str);
0043 #endif
0044
0045 #if defined CLI11_HAS_FILESYSTEM && CLI11_HAS_FILESYSTEM > 0
0046
0047 CLI11_INLINE std::filesystem::path to_path(std::string_view str);
0048 #endif
0049
0050
0051 }
0052
0053 #ifndef CLI11_COMPILE
0054 #include "impl/Encoding_inl.hpp" // IWYU pragma: export
0055 #endif