MCPcopy Index your code
hub / github.com/RustPython/RustPython / replace_errors

Function replace_errors

crates/vm/src/codecs.rs:1164–1178  ·  view source on GitHub ↗
(err: PyObjectRef, vm: &VirtualMachine)

Source from the content-addressed store, hash-verified

1162}
1163
1164fn replace_errors(err: PyObjectRef, vm: &VirtualMachine) -> PyResult<(PyObjectRef, usize)> {
1165 if is_encode_err(&err, vm) {
1166 call_native_encode_error(errors::Replace, err, vm)
1167 } else if is_decode_err(&err, vm) {
1168 call_native_decode_error(errors::Replace, err, vm)
1169 } else if is_translate_err(&err, vm) {
1170 // char::REPLACEMENT_CHARACTER as a str
1171 let replacement_char = "\u{FFFD}";
1172 let range = extract_unicode_error_range(&err, vm)?;
1173 let replace = replacement_char.repeat(range.end - range.start);
1174 Ok((replace.to_pyobject(vm), range.end))
1175 } else {
1176 Err(bad_err_type(err, vm))
1177 }
1178}
1179
1180fn xmlcharrefreplace_errors(
1181 err: PyObjectRef,

Callers

nothing calls this directly

Calls 10

is_encode_errFunction · 0.85
call_native_encode_errorFunction · 0.85
is_decode_errFunction · 0.85
call_native_decode_errorFunction · 0.85
is_translate_errFunction · 0.85
bad_err_typeFunction · 0.85
ErrClass · 0.50
repeatMethod · 0.45
to_pyobjectMethod · 0.45

Tested by

no test coverage detected