penguin-wwy commented on PR #1997:
URL: https://github.com/apache/fury/pull/1997#issuecomment-2575803258

   > 
![image](https://private-user-images.githubusercontent.com/12445254/400783564-e3cd21d9-c879-4f3f-aaf7-c3ff60e9c14c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzYyNjkzNjksIm5iZiI6MTczNjI2OTA2OSwicGF0aCI6Ii8xMjQ0NTI1NC80MDA3ODM1NjQtZTNjZDIxZDktYzg3OS00ZjNmLWFhZjctYzNmZjYwZTljMTRjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAxMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMTA3VDE2NTc0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTEyMDY4Y2M2NjY0MzczNmI0ODBiYTc4YTVlMGY2ODBjZDA0MTUyZDQ2ZWU0ZTgzNDZhN2RjMTU5Yjk3MDVlMjEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.hG1FCbBo1DJahW8IIrOlwizpTVjHkmFoDTmL3RsN1uo)
   > 
   > @penguin-wwy this is how pickle deserialize string.
   > 
   > maybe we need to implement a special _PyUnicode_FromUCS1 in pyfury :
   > 
   > ```c
   > // unicodeobject.c
   > static PyObject *_PyUnicode_FromUCS1(const Py_UCS1 *u, Py_ssize_t size) {
   >   PyObject *res;
   >   unsigned char max_char;
   > 
   >   if (size == 0)
   >     _Py_RETURN_UNICODE_EMPTY();
   >   assert(size > 0);
   >   if (size == 1)
   >     return get_latin1_char(u[0]);
   > 
   >   max_char = ucs1lib_find_max_char(u, u + size);
   >   res = PyUnicode_New(size, max_char);
   >   if (!res)
   >     return NULL;
   >   memcpy(PyUnicode_1BYTE_DATA(res), u, size);
   >   assert(_PyUnicode_CheckConsistency(res, 1));
   >   return res;
   > }
   > ```
   > 
   > I didn't find `ucs1lib_find_max_char` in cpython 3.8/3.9, do you know 
where is this function being implemented?
   
   
https://github.com/python/cpython/blob/3.9/Objects/stringlib/find_max_char.h#L20


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to