Nikolay Kim
|
ea8f11fa6d
|
refactor PyTypeObject trait
|
2017-06-08 14:34:29 -07:00 |
Nikolay Kim
|
86c20bb139
|
Change sig of PyIterProtocol.__next__ method #18
|
2017-06-08 13:43:24 -07:00 |
Nikolay Kim
|
a90c763bc0
|
add class and static methods #17
|
2017-06-08 11:29:40 -07:00 |
Nikolay Kim
|
84f5578997
|
varios cleanups
|
2017-06-05 20:25:00 -07:00 |
Nikolay Kim
|
a448aa54cc
|
clone_ref return Self
|
2017-06-03 17:42:12 -07:00 |
Nikolay Kim
|
57cc139c81
|
drop Py pointer
|
2017-06-03 17:27:26 -07:00 |
Nikolay Kim
|
b75160daf3
|
remove pyobject lifetime
|
2017-06-02 18:58:16 -07:00 |
Nikolay Kim
|
cbfdfa2d07
|
better naming
|
2017-06-01 15:06:48 -07:00 |
Nikolay Kim
|
bcaaeb8522
|
simplify PythonToken
|
2017-06-01 09:45:00 -07:00 |
Nikolay Kim
|
6834a18a5b
|
add ptr support to class
|
2017-05-31 20:50:40 -07:00 |
Nikolay Kim
|
2f3ea202b3
|
add mirror ptr types for native py classes
|
2017-05-31 15:52:13 -07:00 |
Nikolay Kim
|
92bf7b9c05
|
rename pptr to PyObjectPtr
|
2017-05-31 01:08:39 -07:00 |
Nikolay Kim
|
5d25c7deea
|
simplify Py and PyPtr objects
|
2017-05-30 18:57:36 -07:00 |
Nikolay Kim
|
b8913a3705
|
refactor IntoPyObject trait; rename pptr into pyptr, introduce pptr pointers
|
2017-05-30 16:29:13 -07:00 |
Nikolay Kim
|
86a8dfec0c
|
restore sequence and iterator objects
|
2017-05-29 23:04:02 -07:00 |
Nikolay Kim
|
61b8bd0695
|
fix ptr borrowing PyTuple::get_item
|
2017-05-29 18:36:44 -07:00 |
Nikolay Kim
|
4232caf3a3
|
update tests
|
2017-05-29 16:16:48 -07:00 |
Nikolay Kim
|
ad38688378
|
fix sequence protocol; convert buffer protocol
|
2017-05-29 15:08:19 -07:00 |
Nikolay Kim
|
51ac8c9c78
|
better gil token scope
|
2017-05-29 13:30:38 -07:00 |
Nikolay Kim
|
ea8ccf190a
|
special treatment for native python objects
|
2017-05-29 02:47:27 -07:00 |
Nikolay Kim
|
969cba2c16
|
remove Token
|
2017-05-28 08:57:34 -07:00 |
Nikolay Kim
|
bfb01f65d3
|
update tests
|
2017-05-27 11:43:45 -07:00 |
Nikolay Kim
|
6205be98b8
|
introduce PythonToken; cleanup number protocol
|
2017-05-27 10:49:38 -07:00 |
Nikolay Kim
|
0979653b98
|
various cleanups
|
2017-05-25 08:06:10 -07:00 |
Nikolay Kim
|
8fd6e3216f
|
convert object and number protocols to new system
|
2017-05-20 22:18:31 -07:00 |
Nikolay Kim
|
629f53ac52
|
new impl for sequence protocol
|
2017-05-20 12:15:28 -07:00 |
Nikolay Kim
|
452a4e8d7f
|
more mapping protocol methods; start working on class tests
|
2017-05-20 10:40:33 -07:00 |
Nikolay Kim
|
a95de027c1
|
update tests
|
2017-05-12 22:43:17 -07:00 |
Nikolay Kim
|
8a295793a0
|
include py3 ffi info into crate
|
2017-05-12 22:05:00 -07:00 |
Nikolay Kim
|
ffe774a8cc
|
add class properties
|
2017-04-06 19:20:06 -07:00 |
Daniel Grunwald
|
508937bada
|
PyModule::add_class(): set __module__ on the type object
|
2017-02-19 16:15:33 +01:00 |
Samuel Cormier-Iijima
|
2e8d343b0f
|
Add support for in-place numeric operators in py_class!
|
2016-06-14 16:00:55 -04:00 |
Samuel Cormier-Iijima
|
291e08e29a
|
Remove CompareOp::Other, change to __richcmp__, and add tests
|
2016-06-06 20:43:16 -04:00 |
Daniel Grunwald
|
1a6e26f3c3
|
impl ToPyObject+ExtractPyObject for Option<T>
|
2016-05-08 17:51:16 +02:00 |
Daniel Grunwald
|
597893c621
|
py_class!: add __enter__ and __exit__
|
2016-05-08 17:28:26 +02:00 |
Daniel Grunwald
|
453c43203f
|
py_class!: __lshift__, __rshift__, __and__, __xor__, __or__
|
2016-05-08 01:17:22 +02:00 |
Daniel Grunwald
|
4535827f8e
|
py_class!: __add__, __sub__, __mul__, __neg__, __pos__, __abs__, __invert__
|
2016-05-08 01:01:18 +02:00 |
Daniel Grunwald
|
04081bc8de
|
__contains__: if extraction fails with TypeError, return False instead.
|
2016-05-07 23:31:46 +02:00 |
Daniel Grunwald
|
9eafaebfa2
|
py_class!: add __contains__ and __reversed__
|
2016-05-07 23:19:26 +02:00 |
Daniel Grunwald
|
5886720c90
|
py_class!: add __setitem__ and __delitem__
|
2016-05-07 23:01:45 +02:00 |
Daniel Grunwald
|
3de859373c
|
py_class!: add __getitem__
|
2016-05-07 00:04:18 +02:00 |
Daniel Grunwald
|
713a5c53d3
|
py_class!: add __length_hint__, and map __len__ to both sq_length and mp_length.
|
2016-05-06 23:16:06 +02:00 |
Daniel Grunwald
|
318d9a9ef3
|
py_class!: add __call__ slot
|
2016-05-06 22:32:46 +02:00 |
Daniel Grunwald
|
d21143fa39
|
py_class!: add __bool__ slot
|
2016-05-06 22:05:12 +02:00 |
Daniel Grunwald
|
c06838a38e
|
py_class!: add `__hash__` slot
|
2016-05-06 21:41:05 +02:00 |
Daniel Grunwald
|
933e0ed11d
|
Add documentation and tests for string conversion special methods.
|
2016-05-06 21:24:32 +02:00 |
Daniel Grunwald
|
be0c1573aa
|
py_class!: add support for __str__, __repr__, __unicode__ and __format__
|
2016-05-05 07:31:14 +02:00 |
Daniel Grunwald
|
d68e664327
|
Add support for __iter__ and __next__ slots.
|
2016-04-30 23:41:18 +02:00 |
Daniel Grunwald
|
fffcf57834
|
Add support for __len__ special method.
|
2016-04-17 23:26:33 +02:00 |
Daniel Grunwald
|
b721868c25
|
Document pitfalls with __traverse__ and RefCell.
|
2016-04-17 14:03:51 +02:00 |
Daniel Grunwald
|
cd88d28973
|
Add __clear__() special method.
Together with __traverse__, this can be used integrate Python classes
defined in Rust with the Python garbage collector.
|
2016-04-14 18:41:29 +02:00 |
Daniel Grunwald
|
2e977a9c21
|
gc integration: __traverse__ method
|
2016-04-14 18:41:29 +02:00 |
Daniel Grunwald
|
cdf2dc8ff7
|
py_class!: add support for static class members
Fix bug that caused macro expansion to fail when a class had more than
one member.
|
2016-03-18 21:39:11 +01:00 |
Daniel Grunwald
|
3826b54a30
|
py_class!: Add support for class methods.
|
2016-03-16 22:18:48 +01:00 |
Daniel Grunwald
|
f89f957dd4
|
Add support for @staticmethod.
|
2016-03-16 21:49:45 +01:00 |
Daniel Grunwald
|
80a4ad1466
|
Fix bug in py_class! when declaring an instance method with parameter list
|
2016-03-16 21:36:18 +01:00 |
Daniel Grunwald
|
867666cb2b
|
py_class! can't be nested within a function on stable rust
|
2016-03-12 20:32:19 +01:00 |
Daniel Grunwald
|
ab83b4f4a1
|
#14; Convert Rust panic to Python SystemError
|
2016-03-12 01:31:06 +01:00 |
Daniel Grunwald
|
309182cfe8
|
py_class!: Add support for "def __new__(cls)".
|
2016-03-12 00:06:39 +01:00 |
Daniel Grunwald
|
547879ef0f
|
Remove rustobject (PyRustObject, TypeBuilder).
Add new py_class!() macro that generates a static type.
|
2016-03-09 01:07:50 +01:00 |