(
&self,
start: isize,
stop: isize,
value: Option<PyObjectRef>,
vm: &VirtualMachine,
)
| 274 | } |
| 275 | |
| 276 | fn _ass_slice( |
| 277 | &self, |
| 278 | start: isize, |
| 279 | stop: isize, |
| 280 | value: Option<PyObjectRef>, |
| 281 | vm: &VirtualMachine, |
| 282 | ) -> PyResult<()> { |
| 283 | let mapping = self.obj.mapping_unchecked(); |
| 284 | if let Some(f) = mapping.slots().ass_subscript.load() { |
| 285 | let slice = PySlice { |
| 286 | start: Some(start.to_pyobject(vm)), |
| 287 | stop: stop.to_pyobject(vm), |
| 288 | step: None, |
| 289 | }; |
| 290 | f(mapping, &slice.into_pyobject(vm), value, vm) |
| 291 | } else { |
| 292 | Err(vm.new_type_error(format!( |
| 293 | "'{}' object doesn't support slice {}", |
| 294 | self.obj.class(), |
| 295 | if value.is_some() { |
| 296 | "assignment" |
| 297 | } else { |
| 298 | "deletion" |
| 299 | } |
| 300 | ))) |
| 301 | } |
| 302 | } |
| 303 | |
| 304 | pub fn set_slice( |
| 305 | &self, |
no test coverage detected