(
zelf: &Py<Self>,
needle: &PyObject,
value: PyObjectRef,
vm: &VirtualMachine,
)
| 103 | } |
| 104 | |
| 105 | fn _setitem( |
| 106 | zelf: &Py<Self>, |
| 107 | needle: &PyObject, |
| 108 | value: PyObjectRef, |
| 109 | vm: &VirtualMachine, |
| 110 | ) -> PyResult<()> { |
| 111 | match SequenceIndex::try_from_borrowed_object(vm, needle, "bytearray")? { |
| 112 | SequenceIndex::Int(i) => zelf._setitem_by_index(i, value, vm), |
| 113 | SequenceIndex::Slice(slice) => { |
| 114 | let items = if zelf.is(&value) { |
| 115 | zelf.borrow_buf().to_vec() |
| 116 | } else { |
| 117 | bytes_from_object(vm, &value)? |
| 118 | }; |
| 119 | if let Some(mut w) = zelf.try_resizable_opt() { |
| 120 | w.elements.setitem_by_slice(vm, slice, &items) |
| 121 | } else { |
| 122 | zelf.borrow_buf_mut() |
| 123 | .setitem_by_slice_no_resize(vm, slice, &items) |
| 124 | } |
| 125 | } |
| 126 | } |
| 127 | } |
| 128 | |
| 129 | fn _getitem(&self, needle: &PyObject, vm: &VirtualMachine) -> PyResult { |
| 130 | match SequenceIndex::try_from_borrowed_object(vm, needle, "bytearray")? { |
nothing calls this directly
no test coverage detected