Move wmemory_buffer to wchar.h
This commit is contained in:
parent
4a7801c3ec
commit
a9a9018191
@ -647,15 +647,7 @@ enum { inline_buffer_size = 500 };
|
||||
A dynamically growing memory buffer for trivially copyable/constructible types
|
||||
with the first ``SIZE`` elements stored in the object itself.
|
||||
|
||||
You can use one of the following type aliases for common character types:
|
||||
|
||||
+----------------+------------------------------+
|
||||
| Type | Definition |
|
||||
+================+==============================+
|
||||
| memory_buffer | basic_memory_buffer<char> |
|
||||
+----------------+------------------------------+
|
||||
| wmemory_buffer | basic_memory_buffer<wchar_t> |
|
||||
+----------------+------------------------------+
|
||||
You can use the ```memory_buffer`` type alias for ``char`` instead.
|
||||
|
||||
**Example**::
|
||||
|
||||
@ -785,7 +777,6 @@ void basic_memory_buffer<T, SIZE, Allocator>::grow(size_t size) {
|
||||
}
|
||||
|
||||
using memory_buffer = basic_memory_buffer<char>;
|
||||
using wmemory_buffer = basic_memory_buffer<wchar_t>;
|
||||
|
||||
template <typename T, size_t SIZE, typename Allocator>
|
||||
struct is_contiguous<basic_memory_buffer<T, SIZE, Allocator>> : std::true_type {
|
||||
@ -1152,7 +1143,7 @@ inline It format_uint(It out, UInt value, int num_digits, bool upper = false) {
|
||||
// A converter from UTF-8 to UTF-16.
|
||||
class utf8_to_utf16 {
|
||||
private:
|
||||
wmemory_buffer buffer_;
|
||||
basic_memory_buffer<wchar_t> buffer_;
|
||||
|
||||
public:
|
||||
FMT_API explicit utf8_to_utf16(string_view s);
|
||||
|
@ -24,6 +24,7 @@ using wstring_view = basic_string_view<wchar_t>;
|
||||
using wformat_parse_context = basic_format_parse_context<wchar_t>;
|
||||
using wformat_context = buffer_context<wchar_t>;
|
||||
using wformat_args = basic_format_args<wformat_context>;
|
||||
using wmemory_buffer = basic_memory_buffer<wchar_t>;
|
||||
|
||||
#if FMT_GCC_VERSION && FMT_GCC_VERSION < 409
|
||||
// Workaround broken conversion on older gcc.
|
||||
|
@ -13,7 +13,8 @@
|
||||
#include "fmt/format.h"
|
||||
// clang-format on
|
||||
|
||||
#include <stdint.h> // uint32_t
|
||||
#include <stdint.h> // uint32_t
|
||||
|
||||
#include <climits> // INT_MAX
|
||||
#include <cmath> // std::signbit
|
||||
#include <cstring> // std::strlen
|
||||
@ -1896,12 +1897,9 @@ TEST(format_test, format_to_wide) {
|
||||
}
|
||||
|
||||
TEST(format_test, format_to_memory_buffer) {
|
||||
fmt::basic_memory_buffer<char, 100> buffer;
|
||||
fmt::format_to(buffer, "{}", "foo");
|
||||
EXPECT_EQ("foo", to_string(buffer));
|
||||
fmt::wmemory_buffer wbuffer;
|
||||
fmt::format_to(wbuffer, L"{}", L"foo");
|
||||
EXPECT_EQ(L"foo", to_string(wbuffer));
|
||||
auto buf = fmt::basic_memory_buffer<char, 100>();
|
||||
fmt::format_to(buf, "{}", "foo");
|
||||
EXPECT_EQ("foo", to_string(buf));
|
||||
}
|
||||
|
||||
TEST(format_test, format_to_vector) {
|
||||
|
@ -37,6 +37,12 @@ TEST(wchar_test, vformat_to) {
|
||||
EXPECT_EQ(L"42", w);
|
||||
}
|
||||
|
||||
TEST(wchar_test, format_to_memory_buffer) {
|
||||
auto buf = fmt::wmemory_buffer();
|
||||
fmt::format_to(buf, L"{}", L"foo");
|
||||
EXPECT_EQ(L"foo", to_string(buf));
|
||||
}
|
||||
|
||||
TEST(format_test, wide_format_to_n) {
|
||||
wchar_t buffer[4];
|
||||
buffer[3] = L'x';
|
||||
|
Loading…
Reference in New Issue
Block a user