Commit Graph

63 Commits

Author SHA1 Message Date
Noah
fa2d6175c5 Fix flat_option->flatten merge 😬 2020-07-28 13:16:05 -05:00
Noah
a7d81f76ba Merge pull request #2038 from youknowone/flatten
flat_option -> flatten
2020-07-28 13:08:07 -05:00
Jeong YunWon
1a653562b8 flat_option -> flatten
by following std::option::Option
2020-07-29 02:05:48 +09:00
Ben Lewis
73a2b74a06 Code review changes. 2020-07-27 12:43:06 +12:00
Ben Lewis
2d6a1af8e2 Fix/mark itertools tests. 2020-07-27 12:42:44 +12:00
Ben Lewis
c74eb6c9a2 Implement itertools.groupby 2020-07-27 12:39:33 +12:00
Noah
39303f0567 Transition more files to use PyMutex/PyRwLock 2020-07-25 15:22:03 -04:00
Noah
16ff022014 Add the rustpython_common::{cell, rc} modules 2020-07-25 15:22:03 -04:00
Ben Lewis
4f34825333 Move has_attr/get_attr to PyClass to avoid some cloning of Arcs. 2020-07-12 09:12:41 +12:00
Ben Lewis
fe347370c6 Avoid cloning within isinstance/issubclass calls. 2020-07-12 09:12:41 +12:00
Noah
ebab829f60 Switch to using parking_lot::Mutex instead of std::sync::Mutex 2020-07-04 22:58:18 -05:00
Aviv Palivoda
fb5862da91 Remove ThreadSafe trait 2020-05-16 13:58:10 +03:00
Aviv Palivoda
8466f45f2a Fix clippy error 2020-05-09 23:23:18 +03:00
Aviv Palivoda
4cf5178d43 Make PyItertools* ThreadSafe 2020-05-09 22:58:18 +03:00
Jeong YunWon
016d68c819 pymodule itertools 2020-04-27 01:07:36 +09:00
Jeong YunWon
2d50cfa022 Add itertools class names 2020-04-27 00:17:36 +09:00
Noah
d4bda6c02e Fix some clippy lints that were 'allow'ed 2020-04-05 14:55:51 -05:00
Noah
3d07a73346 Fix clippy failure on Rust 1.42.0 2020-03-12 17:42:37 -05:00
Noah
bad4c40904 Fix tests 2020-02-16 17:49:56 -06:00
Jeong YunWon
6ddb690e09 Remove _vm parameter when it is not required 2020-02-06 11:07:51 +09:00
Jeong YunWon
7d0d313aa5 &str::to_string -> &str::to_owned for variables 2020-02-05 22:55:34 +09:00
Jeong YunWon
1bac582921 &str::to_string -> &str::to_owned for literals 2020-02-05 22:55:33 +09:00
Jeong YunWon
b2ba6b2013 objtype::class_*_attr into PyClassRef methods 2020-01-29 21:30:33 +09:00
Jeong YunWon
8c7e01b4f6 pyslot guess slot name from function name 2020-01-15 10:28:39 +09:00
coolreader18
098393d4d6 Add __length_hint__ to a bunch of iterators 2020-01-10 18:24:23 +00:00
Daniel Alley
4bbca2bed2 Add itertools.combinations_with_replacement() 2019-12-26 00:21:53 -05:00
Daniel Alley
bf82caed4b Implement itertools.chain.from_iterable() 2019-12-25 10:33:23 -05:00
Daniel Alley
7be477a091 Add itertools.cycle() 2019-12-24 20:13:50 -05:00
Daniel Alley
5ae7e99cde Add permutations implementation 2019-12-24 00:55:46 -05:00
Daniel Alley
f32fe9dcb8 Fix combinations implementation 2019-12-24 00:23:37 -05:00
Space0726
fbd727e769 Fix numactive to immutable and Cell type, clarify error handling 2019-11-26 18:24:35 +09:00
Space0726
af95003bb9 Fix code style by rustfmt 2019-11-24 03:44:38 +09:00
Space0726
994e86fa25 Implement itertools.zip_longest 2019-11-23 02:43:07 +09:00
Daniel Alley
16b2b425b8 Add itertools.combinations()
re: #1361
2019-11-21 23:06:27 -05:00
Daniel Alley
53b391177b Alphabetize 2019-11-21 12:46:25 -05:00
Windel Bouwman
11e8e6235d Merge pull request #1526 from seeeturtle/itertools
Implement itertools.product
2019-10-20 10:30:40 +02:00
joshua1b
8deb936c22 Implement itertools.product
This implements `itertools.product` of standard library.

Related with #1361
2019-10-20 14:47:22 +09:00
Aviv Palivoda
e89baf8d47 Use usize directly 2019-10-17 19:28:04 +03:00
Jeong YunWon
6c0f852b62 Refactor pymethod return types to be smaller as possible 2019-10-11 03:27:23 +09:00
Jeong YunWon
1fc5dcb5bf Result<T, PyObjectRef> -> PyResult<T> 2019-10-11 02:59:47 +09:00
Windel Bouwman
faee9e3652 Merge pull request #1458 from j30ng/itertools-tee
Implement itertools.tee
2019-10-04 10:53:25 +02:00
j30ng
0b7da12463 Fix Bug in tee.__next__ + Add Test 2019-10-04 16:11:43 +09:00
j30ng
5351b7d98d Use Rc::clone(&rc) instead of rc.clone() 2019-10-04 04:03:34 +09:00
j30ng
301e5a99ed Implement built-in itertools.tee 2019-10-04 02:59:46 +09:00
Noah
d22cac2dd8 Rename new slots to tp_new 2019-09-29 23:14:37 -05:00
Noah
2bb04f4836 Don't try to put __new__ on every type 2019-09-29 23:14:37 -05:00
coolreader18
c46b5b50bd Fix weirdness with type.__new__()/type()/metaclass.__new__() 2019-09-29 23:14:31 -05:00
Hyunji Kim
239115f686 itertools.compress 2019-09-25 22:55:05 +09:00
j30ng
d4e5d76441 Use into_ref_with_type() 2019-09-14 12:02:05 +09:00
j30ng
f920982755 Python 'None' Value -> Option 2019-09-14 11:52:56 +09:00