/
usr
/
include
/
boost
/
beast
/
core
/
detail
/
/usr/include/boost/beast/core/detail
mkdir
upload
Name
Size
Mode
Actions
impl/
-
0755
rm
allocator.hpp
945
0644
edit
dl
rm
async_base.hpp
901
0644
edit
dl
rm
base64.hpp
1942
0644
edit
dl
rm
base64.ipp
6170
0644
edit
dl
rm
bind_continuation.hpp
3504
0644
edit
dl
rm
bind_default_executor.hpp
3243
0644
edit
dl
rm
bind_handler.hpp
10959
0644
edit
dl
rm
buffer.hpp
1825
0644
edit
dl
rm
buffers_pair.hpp
2636
0644
edit
dl
rm
buffers_range_adaptor.hpp
2651
0644
edit
dl
rm
buffers_ref.hpp
1648
0644
edit
dl
rm
buffer_traits.hpp
2095
0644
edit
dl
rm
chacha.hpp
4167
0644
edit
dl
rm
char_buffer.hpp
1407
0644
edit
dl
rm
clamp.hpp
1229
0644
edit
dl
rm
config.hpp
2884
0644
edit
dl
rm
cpu_info.hpp
1787
0644
edit
dl
rm
flat_stream.hpp
1919
0644
edit
dl
rm
get_io_context.hpp
2338
0644
edit
dl
rm
is_invocable.hpp
1888
0644
edit
dl
rm
ostream.hpp
7004
0644
edit
dl
rm
pcg.hpp
1464
0644
edit
dl
rm
read.hpp
9217
0644
edit
dl
rm
remap_post_to_defer.hpp
2152
0644
edit
dl
rm
service_base.hpp
850
0644
edit
dl
rm
sha1.hpp
1624
0644
edit
dl
rm
sha1.ipp
7998
0644
edit
dl
rm
static_const.hpp
1154
0644
edit
dl
rm
static_ostream.hpp
3030
0644
edit
dl
rm
static_string.hpp
3030
0644
edit
dl
rm
stream_base.hpp
2685
0644
edit
dl
rm
stream_traits.hpp
2796
0644
edit
dl
rm
string.hpp
898
0644
edit
dl
rm
temporary_buffer.hpp
1611
0644
edit
dl
rm
tuple.hpp
2194
0644
edit
dl
rm
type_traits.hpp
2779
0644
edit
dl
rm
variant.hpp
4889
0644
edit
dl
rm
varint.hpp
1712
0644
edit
dl
rm
win32_unicode_path.hpp
2148
0644
edit
dl
rm
work_guard.hpp
1851
0644
edit
dl
rm
Edit:
/usr/include/boost/beast/core/detail/win32_unicode_path.hpp
(2148B)
// // Copyright (c) 2019 Mika Fischer (mika.fischer@zoopnet.de) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // // Official repository: https://github.com/boostorg/beast // #ifndef BOOST_BEAST_CORE_DETAIL_WIN32_UNICODE_PATH_HPP #define BOOST_BEAST_CORE_DETAIL_WIN32_UNICODE_PATH_HPP #ifdef _WIN32 #include <boost/config.hpp> #include <boost/beast/core/error.hpp> #include <boost/winapi/character_code_conversion.hpp> #include <boost/winapi/file_management.hpp> #include <boost/winapi/get_last_error.hpp> #include <array> #include <vector> namespace boost { namespace beast { namespace detail { class win32_unicode_path { using WCHAR_ = boost::winapi::WCHAR_; public: win32_unicode_path(const char* utf8_path, error_code& ec) { int ret = mb2wide(utf8_path, static_buf_.data(), static_buf_.size()); if (ret == 0) { int sz = mb2wide(utf8_path, nullptr, 0); if (sz == 0) { ec.assign(boost::winapi::GetLastError(), system_category()); return; } dynamic_buf_.resize(sz); int ret2 = mb2wide(utf8_path, dynamic_buf_.data(), dynamic_buf_.size()); if (ret2 == 0) { ec.assign(boost::winapi::GetLastError(), system_category()); return; } } } WCHAR_ const* c_str() const noexcept { return dynamic_buf_.empty() ? static_buf_.data() : dynamic_buf_.data(); } private: int mb2wide(const char* utf8_path, WCHAR_* buf, size_t sz) { return boost::winapi::MultiByteToWideChar( boost::winapi::CP_UTF8_, boost::winapi::MB_ERR_INVALID_CHARS_, utf8_path, -1, buf, static_cast<int>(sz)); } std::array<WCHAR_, boost::winapi::MAX_PATH_> static_buf_; std::vector<WCHAR_> dynamic_buf_; }; } // detail } // beast } // boost #endif #endif
Save
cmd:
run