Lines Matching full:encoding
88 char *encoding; in normalizestring() local
96 encoding = PyMem_Malloc(len + 1); in normalizestring()
97 if (encoding == NULL) in normalizestring()
100 if (!_Py_normalize_encoding(string, encoding, len + 1)) in normalizestring()
103 PyMem_Free(encoding); in normalizestring()
107 v = PyUnicode_FromString(encoding); in normalizestring()
108 PyMem_Free(encoding); in normalizestring()
112 /* Lookup the given encoding and return a tuple providing the codec
115 The encoding string is looked up converted to all lower-case
127 PyObject *_PyCodec_Lookup(const char *encoding) in _PyCodec_Lookup() argument
129 if (encoding == NULL) { in _PyCodec_Lookup()
139 /* Convert the encoding to a normalized Python string: all in _PyCodec_Lookup()
142 PyObject *v = normalizestring(encoding); in _PyCodec_Lookup()
166 "can't find encoding"); in _PyCodec_Lookup()
195 "unknown encoding: %s", encoding); in _PyCodec_Lookup()
212 /* Codec registry encoding check API. */
214 int PyCodec_KnownEncoding(const char *encoding) in PyCodec_KnownEncoding() argument
218 codecs = _PyCodec_Lookup(encoding); in PyCodec_KnownEncoding()
256 PyObject *codec_getitem(const char *encoding, int index) in codec_getitem() argument
261 codecs = _PyCodec_Lookup(encoding); in codec_getitem()
290 PyObject *codec_getincrementalcodec(const char *encoding, in codec_getincrementalcodec() argument
296 codec_info = _PyCodec_Lookup(encoding); in codec_getincrementalcodec()
307 PyObject *codec_getstreamcodec(const char *encoding, in codec_getstreamcodec() argument
314 codecs = _PyCodec_Lookup(encoding); in codec_getstreamcodec()
351 PyObject *PyCodec_Encoder(const char *encoding) in PyCodec_Encoder() argument
353 return codec_getitem(encoding, 0); in PyCodec_Encoder()
356 PyObject *PyCodec_Decoder(const char *encoding) in PyCodec_Decoder() argument
358 return codec_getitem(encoding, 1); in PyCodec_Decoder()
361 PyObject *PyCodec_IncrementalEncoder(const char *encoding, in PyCodec_IncrementalEncoder() argument
364 return codec_getincrementalcodec(encoding, errors, "incrementalencoder"); in PyCodec_IncrementalEncoder()
367 PyObject *PyCodec_IncrementalDecoder(const char *encoding, in PyCodec_IncrementalDecoder() argument
370 return codec_getincrementalcodec(encoding, errors, "incrementaldecoder"); in PyCodec_IncrementalDecoder()
373 PyObject *PyCodec_StreamReader(const char *encoding, in PyCodec_StreamReader() argument
377 return codec_getstreamcodec(encoding, stream, errors, 2); in PyCodec_StreamReader()
380 PyObject *PyCodec_StreamWriter(const char *encoding, in PyCodec_StreamWriter() argument
384 return codec_getstreamcodec(encoding, stream, errors, 3); in PyCodec_StreamWriter()
393 const char *encoding) in wrap_codec_error() argument
400 operation, encoding); in wrap_codec_error()
403 /* Encode an object (e.g. a Unicode object) using the given encoding
411 const char *encoding, in _PyCodec_EncodeInternal() argument
423 wrap_codec_error("encoding", encoding); in _PyCodec_EncodeInternal()
449 /* Decode an object (usually a Python string) using the given encoding
457 const char *encoding, in _PyCodec_DecodeInternal() argument
469 wrap_codec_error("decoding", encoding); in _PyCodec_DecodeInternal()
494 /* Generic encoding/decoding API */
496 const char *encoding, in PyCodec_Encode() argument
501 encoder = PyCodec_Encoder(encoding); in PyCodec_Encode()
505 return _PyCodec_EncodeInternal(object, encoder, encoding, errors); in PyCodec_Encode()
509 const char *encoding, in PyCodec_Decode() argument
514 decoder = PyCodec_Decoder(encoding); in PyCodec_Decode()
518 return _PyCodec_DecodeInternal(object, decoder, encoding, errors); in PyCodec_Decode()
521 /* Text encoding/decoding API */
522 PyObject * _PyCodec_LookupTextEncoding(const char *encoding, in _PyCodec_LookupTextEncoding() argument
529 codec = _PyCodec_Lookup(encoding); in _PyCodec_LookupTextEncoding()
534 * encoding, and the same for anything lacking the private in _PyCodec_LookupTextEncoding()
549 "'%.400s' is not a text encoding; " in _PyCodec_LookupTextEncoding()
551 encoding, alternate_command); in _PyCodec_LookupTextEncoding()
557 /* This appears to be a valid text encoding */ in _PyCodec_LookupTextEncoding()
563 PyObject *codec_getitem_checked(const char *encoding, in codec_getitem_checked() argument
570 codec = _PyCodec_LookupTextEncoding(encoding, alternate_command); in codec_getitem_checked()
580 static PyObject * _PyCodec_TextEncoder(const char *encoding) in _PyCodec_TextEncoder() argument
582 return codec_getitem_checked(encoding, "codecs.encode()", 0); in _PyCodec_TextEncoder()
585 static PyObject * _PyCodec_TextDecoder(const char *encoding) in _PyCodec_TextDecoder() argument
587 return codec_getitem_checked(encoding, "codecs.decode()", 1); in _PyCodec_TextDecoder()
591 const char *encoding, in _PyCodec_EncodeText() argument
596 encoder = _PyCodec_TextEncoder(encoding); in _PyCodec_EncodeText()
600 return _PyCodec_EncodeInternal(object, encoder, encoding, errors); in _PyCodec_EncodeText()
604 const char *encoding, in _PyCodec_DecodeText() argument
609 decoder = _PyCodec_TextDecoder(encoding); in _PyCodec_DecodeText()
613 return _PyCodec_DecodeInternal(object, decoder, encoding, errors); in _PyCodec_DecodeText()
637 the error handling callback for strict encoding will be returned. */
1061 get_standard_encoding(const char *encoding, int *bytelength) in get_standard_encoding() argument
1063 if (Py_TOLOWER(encoding[0]) == 'u' && in get_standard_encoding()
1064 Py_TOLOWER(encoding[1]) == 't' && in get_standard_encoding()
1065 Py_TOLOWER(encoding[2]) == 'f') { in get_standard_encoding()
1066 encoding += 3; in get_standard_encoding()
1067 if (*encoding == '-' || *encoding == '_' ) in get_standard_encoding()
1068 encoding++; in get_standard_encoding()
1069 if (encoding[0] == '8' && encoding[1] == '\0') { in get_standard_encoding()
1073 else if (encoding[0] == '1' && encoding[1] == '6') { in get_standard_encoding()
1074 encoding += 2; in get_standard_encoding()
1076 if (*encoding == '\0') { in get_standard_encoding()
1083 if (*encoding == '-' || *encoding == '_' ) in get_standard_encoding()
1084 encoding++; in get_standard_encoding()
1085 if (Py_TOLOWER(encoding[1]) == 'e' && encoding[2] == '\0') { in get_standard_encoding()
1086 if (Py_TOLOWER(encoding[0]) == 'b') in get_standard_encoding()
1088 if (Py_TOLOWER(encoding[0]) == 'l') in get_standard_encoding()
1092 else if (encoding[0] == '3' && encoding[1] == '2') { in get_standard_encoding()
1093 encoding += 2; in get_standard_encoding()
1095 if (*encoding == '\0') { in get_standard_encoding()
1102 if (*encoding == '-' || *encoding == '_' ) in get_standard_encoding()
1103 encoding++; in get_standard_encoding()
1104 if (Py_TOLOWER(encoding[1]) == 'e' && encoding[2] == '\0') { in get_standard_encoding()
1105 if (Py_TOLOWER(encoding[0]) == 'b') in get_standard_encoding()
1107 if (Py_TOLOWER(encoding[0]) == 'l') in get_standard_encoding()
1112 else if (strcmp(encoding, "CP_UTF8") == 0) { in get_standard_encoding()
1127 const char *encoding; in PyCodec_SurrogatePassErrors() local
1147 if (!(encoding = PyUnicode_AsUTF8(encode))) { in PyCodec_SurrogatePassErrors()
1152 code = get_standard_encoding(encoding, &bytelength); in PyCodec_SurrogatePassErrors()
1226 if (!(encoding = PyUnicode_AsUTF8(encode))) { in PyCodec_SurrogatePassErrors()
1231 code = get_standard_encoding(encoding, &bytelength); in PyCodec_SurrogatePassErrors()