at 23.11-beta 2.7 kB view raw
1Based on https://sourceforge.net/p/ruamel-yaml-clib/code/merge-requests/4/ with additions 2for `input_handler` and `output_handler`. 3 4--- a/_ruamel_yaml.pxd 5+++ b/_ruamel_yaml.pxd 6@@ -2,15 +2,15 @@ 7 cdef extern from "_ruamel_yaml.h": 8 9 void malloc(int l) 10- void memcpy(char *d, char *s, int l) 11+ void memcpy(unsigned char *d, char *s, int l) 12 int strlen(char *s) 13 int PyString_CheckExact(object o) 14 int PyUnicode_CheckExact(object o) 15 char *PyString_AS_STRING(object o) 16 int PyString_GET_SIZE(object o) 17- object PyString_FromStringAndSize(char *v, int l) 18+ object PyString_FromStringAndSize(unsigned char *v, size_t l) 19 object PyUnicode_FromString(char *u) 20- object PyUnicode_DecodeUTF8(char *u, int s, char *e) 21+ object PyUnicode_DecodeUTF8(unsigned char *u, size_t s, char *e) 22 object PyUnicode_AsUTF8String(object o) 23 int PY_MAJOR_VERSION 24 25@@ -85,11 +85,11 @@ 26 YAML_MAPPING_START_EVENT 27 YAML_MAPPING_END_EVENT 28 29- ctypedef int yaml_read_handler_t(void *data, char *buffer, 30- int size, int *size_read) except 0 31- 32- ctypedef int yaml_write_handler_t(void *data, char *buffer, 33- int size) except 0 34+ ctypedef int yaml_read_handler_t(void *data, unsigned char *buffer, 35+ size_t size, size_t *size_read) except 0 36+ 37+ ctypedef int yaml_write_handler_t(void *data, unsigned char *buffer, 38+ size_t size) except 0 39 40 ctypedef struct yaml_mark_t: 41 int index 42@@ -112,7 +112,7 @@ 43 char *handle 44 char *suffix 45 ctypedef struct _yaml_token_scalar_data_t: 46- char *value 47+ unsigned char *value 48 int length 49 yaml_scalar_style_t style 50 ctypedef struct _yaml_token_version_directive_data_t: 51@@ -151,7 +151,7 @@ 52 ctypedef struct _yaml_event_scalar_data_t: 53 char *anchor 54 char *tag 55- char *value 56+ unsigned char *value 57 int length 58 int plain_implicit 59 int quoted_implicit 60--- a/_ruamel_yaml.pyx 61+++ b/_ruamel_yaml.pyx 62@@ -904,7 +904,7 @@ 63 raise error 64 return 1 65 66-cdef int input_handler(void *data, char *buffer, int size, int *read) except 0: 67+cdef int input_handler(void *data, unsigned char *buffer, size_t size, size_t *read) except 0: 68 cdef CParser parser 69 parser = <CParser>data 70 if parser.stream_cache is None: 71@@ -1514,7 +1514,7 @@ 72 self.ascend_resolver() 73 return 1 74 75-cdef int output_handler(void *data, char *buffer, int size) except 0: 76+cdef int output_handler(void *data, unsigned char *buffer, size_t size) except 0: 77 cdef CEmitter emitter 78 emitter = <CEmitter>data 79 if emitter.dump_unicode == 0: