char16ptr.h File Reference

C++ API: char16_t pointer wrappers with implicit conversion from bit-compatible raw pointer types. More...

`#include "unicode/utypes.h"`
`#include <cstddef>`
`#include <string_view>`

Go to the source code of this file.

## Data Structures

class | icu::Char16Ptr
| char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types. More...
class | icu::ConstChar16Ptr
| const char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types. More...

## Namespaces

namespace | icu
| File coll.h.

## Macros

#define | U_ALIASING_BARRIER(ptr)
| Barrier for pointer anti-aliasing optimizations even across function boundaries.

## Functions

const UChar * | icu::toUCharPtr (const char16_t *p)
| Converts from const char16_t * to const UChar *.
UChar * | icu::toUCharPtr (char16_t *p)
| Converts from char16_t * to UChar *.
const OldUChar * | icu::toOldUCharPtr (const char16_t *p)
| Converts from const char16_t * to const OldUChar *.
OldUChar * | icu::toOldUCharPtr (char16_t *p)
| Converts from char16_t * to OldUChar *.

## Variables

template<typename T >
constexpr bool | icu::ConvertibleToU16StringView
| Is T convertible to a std::u16string_view or some other 16-bit string view?

## Detailed Description

C++ API: char16_t pointer wrappers with implicit conversion from bit-compatible raw pointer types.

Also conversion functions from char16_t * to UChar * and OldUChar *.

Definition in file char16ptr.h.

## Macro Definition Documentation

## U_ALIASING_BARRIER

#define U_ALIASING_BARRIER | ( |  | ptr | ) |

Barrier for pointer anti-aliasing optimizations even across function boundaries.

Internal:
  Do not use. This API is for internal use only.

Definition at line 36 of file char16ptr.h.