From 4eed2821d40373345ed133b2b8d912fef59acab7 Mon Sep 17 00:00:00 2001 From: Zackery Spytz Date: Thu, 3 Jun 2021 06:33:44 -0700 Subject: bpo-39560: Document PyUnicode_FromKindAndData() kind transformation (GH-23848) --- Doc/c-api/unicode.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Doc/c-api/unicode.rst b/Doc/c-api/unicode.rst index 8322d3d..ddc2346 100644 --- a/Doc/c-api/unicode.rst +++ b/Doc/c-api/unicode.rst @@ -421,6 +421,12 @@ APIs: :c:func:`PyUnicode_KIND`). The *buffer* must point to an array of *size* units of 1, 2 or 4 bytes per character, as given by the kind. + If necessary, the input *buffer* is copied and transformed into the + canonical representation. For example, if the *buffer* is a UCS4 string + (:c:macro:`PyUnicode_4BYTE_KIND`) and it consists only of codepoints in + the UCS1 range, it will be transformed into UCS1 + (:c:macro:`PyUnicode_1BYTE_KIND`). + .. versionadded:: 3.3 -- cgit v0.12