Merge pull request #1162 from adolfogonzalez3/impl-list.__rmul__

Implemented list.__rmul__
This commit is contained in:
Windel Bouwman
2019-07-21 09:55:42 +02:00
committed by GitHub

View File

@@ -167,7 +167,6 @@ impl PyListRef {
fn reverse(self, _vm: &VirtualMachine) {
self.elements.borrow_mut().reverse();
}
fn reversed(self, _vm: &VirtualMachine) -> PyListReverseIterator {
let final_position = self.elements.borrow().len();
PyListReverseIterator {
@@ -406,6 +405,10 @@ impl PyListRef {
vm.ctx.new_list(new_elements)
}
fn rmul(self, counter: isize, vm: &VirtualMachine) -> PyObjectRef {
self.mul(counter, &vm)
}
fn imul(self, counter: isize, _vm: &VirtualMachine) -> Self {
let new_elements = seq_mul(&self.elements.borrow().as_slice(), counter)
.cloned()
@@ -878,6 +881,7 @@ pub fn init(context: &PyContext) {
"__setitem__" => context.new_rustfunc(PyListRef::setitem),
"__reversed__" => context.new_rustfunc(PyListRef::reversed),
"__mul__" => context.new_rustfunc(PyListRef::mul),
"__rmul__" => context.new_rustfunc(PyListRef::rmul),
"__imul__" => context.new_rustfunc(PyListRef::imul),
"__len__" => context.new_rustfunc(PyListRef::len),
"__new__" => context.new_rustfunc(list_new),