Skip to content

Commit 2e29248

Browse files
authored
__{get,set,del}item__ without pymethods (#6622)
* __getitem__ without pymethod * __setitem__ __delitem__ without pymethod * sort slot names
1 parent 1f8ef0a commit 2e29248

File tree

18 files changed

+4
-34
lines changed

18 files changed

+4
-34
lines changed

crates/stdlib/src/array.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -996,7 +996,6 @@ mod array {
996996
}
997997
}
998998

999-
#[pymethod]
1000999
fn __getitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
10011000
self.getitem_inner(&needle, vm)
10021001
}
@@ -1038,7 +1037,6 @@ mod array {
10381037
}
10391038
}
10401039

1041-
#[pymethod]
10421040
fn __setitem__(
10431041
zelf: &Py<Self>,
10441042
needle: PyObjectRef,
@@ -1055,7 +1053,6 @@ mod array {
10551053
}
10561054
}
10571055

1058-
#[pymethod]
10591056
fn __delitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult<()> {
10601057
self.delitem_inner(&needle, vm)
10611058
}

crates/stdlib/src/contextvars.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,6 @@ mod _contextvars {
189189
}
190190
}
191191

192-
#[pymethod]
193192
fn __getitem__(
194193
&self,
195194
var: PyRef<ContextVar>,

crates/stdlib/src/mmap.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1240,12 +1240,10 @@ mod mmap {
12401240
Ok(())
12411241
}
12421242

1243-
#[pymethod]
12441243
fn __getitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult<PyObjectRef> {
12451244
self.getitem_inner(&needle, vm)
12461245
}
12471246

1248-
#[pymethod]
12491247
fn __setitem__(
12501248
zelf: &Py<Self>,
12511249
needle: PyObjectRef,

crates/vm/src/builtins/bytearray.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -238,12 +238,10 @@ impl PyByteArray {
238238
Ok(zelf)
239239
}
240240

241-
#[pymethod]
242241
fn __getitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
243242
self._getitem(&needle, vm)
244243
}
245244

246-
#[pymethod]
247245
pub fn __delitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult<()> {
248246
self._delitem(&needle, vm)
249247
}
@@ -549,7 +547,6 @@ impl PyByteArray {
549547

550548
#[pyclass]
551549
impl Py<PyByteArray> {
552-
#[pymethod]
553550
fn __setitem__(
554551
&self,
555552
needle: PyObjectRef,

crates/vm/src/builtins/bytes.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,6 @@ impl PyBytes {
241241
PyBytesInner::maketrans(from, to, vm)
242242
}
243243

244-
#[pymethod]
245244
fn __getitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
246245
self._getitem(&needle, vm)
247246
}

crates/vm/src/builtins/dict.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,6 @@ impl PyDict {
225225
self.entries.contains(vm, &*key)
226226
}
227227

228-
#[pymethod]
229228
fn __delitem__(&self, key: PyObjectRef, vm: &VirtualMachine) -> PyResult<()> {
230229
self.inner_delitem(&*key, vm)
231230
}
@@ -235,7 +234,6 @@ impl PyDict {
235234
self.entries.clear()
236235
}
237236

238-
#[pymethod]
239237
fn __setitem__(
240238
&self,
241239
key: PyObjectRef,
@@ -372,7 +370,6 @@ impl Py<PyDict> {
372370
Ok(Implemented(true))
373371
}
374372

375-
#[pymethod]
376373
#[cfg_attr(feature = "flame-it", flame("PyDictRef"))]
377374
fn __getitem__(&self, key: PyObjectRef, vm: &VirtualMachine) -> PyResult {
378375
self.inner_getitem(&*key, vm)

crates/vm/src/builtins/genericalias.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,6 @@ impl PyGenericAlias {
189189
}
190190
}
191191

192-
#[pymethod]
193192
fn __getitem__(zelf: PyRef<Self>, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
194193
let new_args = subs_parameters(
195194
zelf.to_owned().into(),

crates/vm/src/builtins/list.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,6 @@ impl PyList {
213213
}
214214
}
215215

216-
#[pymethod]
217216
fn __getitem__(&self, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
218217
self._getitem(&needle, vm)
219218
}
@@ -228,7 +227,6 @@ impl PyList {
228227
}
229228
}
230229

231-
#[pymethod]
232230
fn __setitem__(
233231
&self,
234232
needle: PyObjectRef,
@@ -308,7 +306,6 @@ impl PyList {
308306
}
309307
}
310308

311-
#[pymethod]
312309
fn __delitem__(&self, subscript: PyObjectRef, vm: &VirtualMachine) -> PyResult<()> {
313310
self._delitem(&subscript, vm)
314311
}

crates/vm/src/builtins/mappingproxy.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,6 @@ impl PyMappingProxy {
111111
)?))
112112
}
113113

114-
#[pymethod]
115114
pub fn __getitem__(&self, key: PyObjectRef, vm: &VirtualMachine) -> PyResult {
116115
self.get_inner(key.clone(), vm)?
117116
.ok_or_else(|| vm.new_key_error(key))

crates/vm/src/builtins/memory.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -659,7 +659,6 @@ impl PyMemoryView {
659659
self.release();
660660
}
661661

662-
#[pymethod]
663662
fn __getitem__(zelf: PyRef<Self>, needle: PyObjectRef, vm: &VirtualMachine) -> PyResult {
664663
zelf.try_not_released(vm)?;
665664
if zelf.desc.ndim() == 0 {
@@ -682,7 +681,6 @@ impl PyMemoryView {
682681
}
683682
}
684683

685-
#[pymethod]
686684
fn __delitem__(&self, _needle: PyObjectRef, vm: &VirtualMachine) -> PyResult<()> {
687685
if self.desc.readonly {
688686
return Err(vm.new_type_error("cannot modify read-only memory"));
@@ -847,7 +845,6 @@ impl PyMemoryView {
847845

848846
#[pyclass]
849847
impl Py<PyMemoryView> {
850-
#[pymethod]
851848
fn __setitem__(
852849
&self,
853850
needle: PyObjectRef,

0 commit comments

Comments
 (0)