Commit Graph

658 Commits

Author SHA1 Message Date
Adam Kelly
a2ce4c8045 Add special case handling for __get__(None, NoneType) 2018-11-04 20:58:21 +00:00
Adam Kelly
7bf8378a18 type.__getattribute__ should be bound to type! 2018-11-04 18:43:39 +00:00
Windel Bouwman
a389b55ec1 Initial version of property class. 2018-11-04 17:14:07 +01:00
Windel Bouwman
6746784db8 Add classmethod and staticmethod classes. 2018-11-04 13:27:50 +01:00
Windel Bouwman
5ffb20b26e Add builtin oct function. Add weakref.ref class. 2018-11-04 12:07:53 +01:00
Windel Bouwman
8d598740d9 Add int __pos__ method 2018-11-04 09:34:54 +01:00
Windel Bouwman
9364902768 Add tilde unary operator in syntax. 2018-11-04 09:30:13 +01:00
Windel Bouwman
17fc5a2345 Implemented hexadecimal, octal and binary literals. Also use bigint in the lexer to store big integer literals. 2018-11-04 09:00:44 +01:00
Windel Bouwman
0a724093d0 Merge pull request #187 from RustPython/oo_fixes
Oo fixes
2018-11-04 08:38:20 +01:00
Adam Kelly
ff4e8da07e Merge branch 'master' into newinit 2018-11-03 22:42:40 +00:00
Adam Kelly
ba8990ed17 Fix check that __init__ must return None. 2018-11-03 18:09:51 +00:00
Adam Kelly
bcdb2089d5 Add logic for inheriting metaclass from bases. 2018-11-03 18:09:32 +00:00
Adam Kelly
63c4f3b407 Remove unneeded extra object from bases list. 2018-11-03 17:42:44 +00:00
Adam Kelly
277332c168 builtin_print - separate multiple arguments with spaces. 2018-11-03 17:37:51 +00:00
Adam Kelly
e6f0618382 Unify/simplify code-paths around __new__/__init__. 2018-11-03 17:34:13 +00:00
Windel Bouwman
0199137fb0 Add sum builtin function. 2018-11-03 15:45:50 +01:00
Windel Bouwman
079905277b Add time module and improve lexer handling of numeric constants 2018-11-03 15:12:12 +01:00
Windel Bouwman
d72abebdd0 Unify object kinds tuple and list into sequence. 2018-11-03 12:26:31 +01:00
Windel Bouwman
b6a88cc3d5 Add test script for bytearray 2018-11-03 11:32:21 +01:00
Windel Bouwman
810ef7df1c Add bytearray object 2018-11-03 11:09:15 +01:00
Windel Bouwman
a6f64eefee Change int __pow__ to use bigint pow. 2018-11-03 10:30:17 +01:00
Windel Bouwman
081a33f41a Merge pull request #185 from RustPython/prepare
Add support for __prepare__.
2018-11-03 10:25:59 +01:00
Adam Kelly
008c36466e Add support for __prepare__. 2018-11-02 22:09:12 +00:00
Windel Bouwman
039b5bbbb7 Implement dict __setitem__ 2018-11-02 22:04:18 +01:00
Windel Bouwman
9869ef7db5 Add delattr builtin method. 2018-11-02 21:01:24 +01:00
Windel Bouwman
b7a0b0f2f3 Removal of ToRust trait to prevent incorrect str representation 2018-11-02 20:27:05 +01:00
Windel Bouwman
4be2f24708 Merge pull request #184 from RustPython/metaclasses
WIP - Specify metaclass and create class with correct type.
2018-11-02 19:32:03 +01:00
Adam Kelly
aa10e9b589 Fix traceback printing bug. 2018-11-02 17:39:40 +00:00
Adam Kelly
f587221401 Separate get_method (magic methods) and get_attribute (full attribute access). 2018-11-02 17:16:46 +00:00
Adam Kelly
ac861a4629 Special cases for new, and type error on bad call. 2018-11-02 17:16:46 +00:00
Adam Kelly
dce628dfad Simple metaclass snippet demoing call and new. 2018-11-02 17:16:46 +00:00
Adam Kelly
aa955c9ca3 Support **kwargs to __call__. 2018-11-01 19:57:13 +00:00
Adam Kelly
5c7b0da2f1 Magic methods aren't looked up via getattribute. 2018-11-01 19:57:13 +00:00
Adam Kelly
3e07c19ec4 Implement object.__getattribute__. 2018-11-01 19:57:13 +00:00
Adam Kelly
c8e842eaab Specify metaclass and create class with correct type. 2018-11-01 19:55:23 +00:00
Windel Bouwman
89cfdbe3dd Use __setitem__ to store elements in list. Also refactor get_elements to return a reference to the elements, not a copy. 2018-10-31 23:18:26 +01:00
Windel Bouwman
2aa763867c Try __sub__, next __rsub__, next give up 2018-10-31 22:02:23 +01:00
Windel Bouwman
bddaf3e77e Implement while-else and for-else. Call __neg__ and __invert__ methods on unary operation. 2018-10-31 21:50:00 +01:00
Windel Bouwman
cb4d66bd48 Added bit length method on int type. 2018-10-30 22:08:10 +01:00
Windel Bouwman
f6cced5d65 Change integer type into bigint 2018-10-30 21:01:31 +01:00
Windel Bouwman
1e3b45ee0d Add complex basic type 2018-10-29 21:55:58 +01:00
Windel Bouwman
5053d6d167 Add bytes literal support. 2018-10-28 21:15:46 +01:00
Windel Bouwman
7e1067168b Add list.extend method 2018-10-28 20:16:24 +01:00
Windel Bouwman
e6fd9fb0a0 Add double star arguments in function calls 2018-10-28 20:05:05 +01:00
Windel Bouwman
3f6c716b37 Implement star expand argument in function call. 2018-10-28 19:16:21 +01:00
Windel Bouwman
851d263878 Merge branch 'master' of https://github.com/RustPython/RustPython 2018-10-28 14:16:15 +01:00
Windel Bouwman
4187a6ee39 Add support for star expanded argument in list and tuple constructions. 2018-10-28 14:16:11 +01:00
Windel Bouwman
abe6abadf3 Merge pull request #181 from BojanKogoj/bojan/objfloat-__ge__
Added __ge__ to float
2018-10-28 13:35:26 +01:00
Windel Bouwman
6190914540 Merge pull request #176 from cauebs/master
Implement `bin` and `hex` builtin functions
2018-10-28 13:33:24 +01:00
Windel Bouwman
1974cbe691 Refactor frame to be able to handle errors more easily. 2018-10-28 11:51:29 +01:00