diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2011-10-03 23:32:45 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2011-10-03 23:32:45 (GMT) |
commit | 30134f53fcc856e0e2bcfe48f51f623779be2608 (patch) | |
tree | 66db76a5014786069c10d435ca8a9c2717e0b3f9 /Include/unicodeobject.h | |
parent | b092365cc618d0f46ed43ff8f115e591c661cda6 (diff) | |
download | cpython-30134f53fcc856e0e2bcfe48f51f623779be2608.zip cpython-30134f53fcc856e0e2bcfe48f51f623779be2608.tar.gz cpython-30134f53fcc856e0e2bcfe48f51f623779be2608.tar.bz2 |
Complete documentation of compact ASCII strings
Diffstat (limited to 'Include/unicodeobject.h')
-rw-r--r-- | Include/unicodeobject.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Include/unicodeobject.h b/Include/unicodeobject.h index 3dee11f..a18b3dd 100644 --- a/Include/unicodeobject.h +++ b/Include/unicodeobject.h @@ -215,7 +215,9 @@ typedef struct { * compact = 1 * ascii = 1 * ready = 1 - * utf8 = data + * (length is the length of the utf8 and wstr strings) + * (data starts just after the structure) + * (since ASCII is decoded from UTF-8, the utf8 string are the data) - compact: @@ -225,25 +227,26 @@ typedef struct { * compact = 1 * ready = 1 * ascii = 0 - * utf8 != data + * utf8 is not shared with data * utf8_length = 0 if utf8 is NULL * wstr is shared with data and wstr_length=length if kind=PyUnicode_2BYTE_KIND and sizeof(wchar_t)=2 or if kind=PyUnicode_4BYTE_KIND and sizeof(wchar_4)=4 * wstr_length = 0 if wstr is NULL + * (data starts just after the structure) - legacy string, not ready: * structure = PyUnicodeObject * kind = PyUnicode_WCHAR_KIND * compact = 0 + * ascii = 0 * ready = 0 * wstr is not NULL * data.any is NULL * utf8 is NULL * utf8_length = 0 * interned = SSTATE_NOT_INTERNED - * ascii = 0 - legacy string, ready: |