summaryrefslogtreecommitdiffstats
path: root/Include/unicodeobject.h
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@haypocalc.com>2011-10-03 23:32:45 (GMT)
committerVictor Stinner <victor.stinner@haypocalc.com>2011-10-03 23:32:45 (GMT)
commit30134f53fcc856e0e2bcfe48f51f623779be2608 (patch)
tree66db76a5014786069c10d435ca8a9c2717e0b3f9 /Include/unicodeobject.h
parentb092365cc618d0f46ed43ff8f115e591c661cda6 (diff)
downloadcpython-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.h9
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: