Skip to content

Commit da9b21c

Browse files
committed
switch RangeIndex to PyObjectRef
As `getitem` method in other types, get second argument as PyObjectRef.
1 parent 63f0dd5 commit da9b21c

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

vm/src/builtins/range.rs

+3-4
Original file line numberDiff line numberDiff line change
@@ -337,8 +337,8 @@ impl PyRange {
337337
}
338338

339339
#[pymethod(magic)]
340-
fn getitem(&self, subscript: RangeIndex, vm: &VirtualMachine) -> PyResult {
341-
match subscript {
340+
fn getitem(&self, subscript: PyObjectRef, vm: &VirtualMachine) -> PyResult {
341+
match RangeIndex::try_from_object(vm, subscript)? {
342342
RangeIndex::Slice(slice) => {
343343
let (mut substart, mut substop, mut substep) =
344344
slice.inner_indices(&self.compute_length(), vm)?;
@@ -394,8 +394,7 @@ impl AsMapping for PyRange {
394394

395395
#[inline]
396396
fn subscript(zelf: PyObjectRef, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
397-
Self::downcast_ref(&zelf, vm)
398-
.map(|zelf| zelf.getitem(RangeIndex::try_from_object(vm, needle)?, vm))?
397+
Self::downcast_ref(&zelf, vm).map(|zelf| zelf.getitem(needle, vm))?
399398
}
400399

401400
#[inline]

0 commit comments

Comments
 (0)