diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-10-07 04:52:50 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-10-07 04:52:50 +0200 |
commit | 0aa6201a490bfabc0ae021ceb9f1fb0f46727c5d (patch) | |
tree | a71d934d8151dd43e7c16555fef17fd749c5da70 /lib/asio/detail/winrt_utils.hpp | |
parent | 558d74bffd9f069955af52c0b308a1d6169bcff0 (diff) | |
parent | 0330221d51421caa110b8c5dcb567cc3d0620eb9 (diff) | |
download | dabmod-0aa6201a490bfabc0ae021ceb9f1fb0f46727c5d.tar.gz dabmod-0aa6201a490bfabc0ae021ceb9f1fb0f46727c5d.tar.bz2 dabmod-0aa6201a490bfabc0ae021ceb9f1fb0f46727c5d.zip |
Merge lime output into next branch
Diffstat (limited to 'lib/asio/detail/winrt_utils.hpp')
-rw-r--r-- | lib/asio/detail/winrt_utils.hpp | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/lib/asio/detail/winrt_utils.hpp b/lib/asio/detail/winrt_utils.hpp deleted file mode 100644 index 22a2489..0000000 --- a/lib/asio/detail/winrt_utils.hpp +++ /dev/null @@ -1,106 +0,0 @@ -// -// detail/winrt_utils.hpp -// ~~~~~~~~~~~~~~~~~~~~~~ -// -// Copyright (c) 2003-2018 Christopher M. Kohlhoff (chris at kohlhoff dot com) -// -// 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) -// - -#ifndef ASIO_DETAIL_WINRT_UTILS_HPP -#define ASIO_DETAIL_WINRT_UTILS_HPP - -#if defined(_MSC_VER) && (_MSC_VER >= 1200) -# pragma once -#endif // defined(_MSC_VER) && (_MSC_VER >= 1200) - -#include "asio/detail/config.hpp" - -#if defined(ASIO_WINDOWS_RUNTIME) - -#include <codecvt> -#include <cstdlib> -#include <future> -#include <locale> -#include <robuffer.h> -#include <windows.storage.streams.h> -#include <wrl/implements.h> -#include "asio/buffer.hpp" -#include "asio/error_code.hpp" -#include "asio/detail/memory.hpp" -#include "asio/detail/socket_ops.hpp" - -#include "asio/detail/push_options.hpp" - -namespace asio { -namespace detail { -namespace winrt_utils { - -inline Platform::String^ string(const char* from) -{ - std::wstring tmp(from, from + std::strlen(from)); - return ref new Platform::String(tmp.c_str()); -} - -inline Platform::String^ string(const std::string& from) -{ - std::wstring tmp(from.begin(), from.end()); - return ref new Platform::String(tmp.c_str()); -} - -inline std::string string(Platform::String^ from) -{ - std::wstring_convert<std::codecvt_utf8<wchar_t>> converter; - return converter.to_bytes(from->Data()); -} - -inline Platform::String^ string(unsigned short from) -{ - return string(std::to_string(from)); -} - -template <typename T> -inline Platform::String^ string(const T& from) -{ - return string(from.to_string()); -} - -inline int integer(Platform::String^ from) -{ - return _wtoi(from->Data()); -} - -template <typename T> -inline Windows::Networking::HostName^ host_name(const T& from) -{ - return ref new Windows::Networking::HostName((string)(from)); -} - -template <typename ConstBufferSequence> -inline Windows::Storage::Streams::IBuffer^ buffer_dup( - const ConstBufferSequence& buffers) -{ - using Microsoft::WRL::ComPtr; - using asio::buffer_size; - std::size_t size = buffer_size(buffers); - auto b = ref new Windows::Storage::Streams::Buffer(size); - ComPtr<IInspectable> insp = reinterpret_cast<IInspectable*>(b); - ComPtr<Windows::Storage::Streams::IBufferByteAccess> bacc; - insp.As(&bacc); - byte* bytes = nullptr; - bacc->Buffer(&bytes); - asio::buffer_copy(asio::buffer(bytes, size), buffers); - b->Length = size; - return b; -} - -} // namespace winrt_utils -} // namespace detail -} // namespace asio - -#include "asio/detail/pop_options.hpp" - -#endif // defined(ASIO_WINDOWS_RUNTIME) - -#endif // ASIO_DETAIL_WINRT_UTILS_HPP |