1 #pragma once // Source encoding: UTF-8 with BOM (π is a lowercase Greek "pi"). 18 template<
class Out_iterator >
26 template<
class In_iterator,
class Out_iterator >
29 const Out_iterator destination
35 Out_iterator current = destination;
36 const In_iterator beyond_bytes = bytes_range.beyond();
37 for(
auto it = bytes_range.first(); it != beyond_bytes; )
45 template<
class In_iterator,
class Out_iterator >
47 const In_iterator first,
48 const In_iterator beyond,
49 const Out_iterator destination
auto from_code_point(const uint32_t code_point, const Out_iterator destination) -> Out_iterator
constexpr int magnitude_bits_per_
The number of bits that determine the magnitude, i.e. the number of value representation bits minus a...
auto utf16_from_byte(const Byte value, const Out_iterator destination) -> Out_iterator
auto in_out_ref(Type &o) -> In_out_ref_< Type >
bits_per_ and magnitude_bits_per_, plus the for-readability constant bits_per_byte.
auto utf16_from_bytes(const In_iterator first, const In_iterator beyond, const Out_iterator destination) -> Out_iterator
auto next(P_< const char > p) -> P_< const char >
auto code_point_from_bytes(In_out_ref_< In_iterator > it_ref, const In_iterator beyond) -> uint32_t
unsigned char Byte
Default choice of byte type.
typename std::iterator_traits< Iterator >::value_type Item_for_iterator_
CPPX_USE_STD(basic_string, basic_string_view, string, string_view, u16string, wstring, iterator_traits, move, next)
auto utf16_from_bytes(const Span_< In_iterator > bytes_range, const Out_iterator destination) -> Out_iterator