Commit Graph

1107 Commits

Author SHA1 Message Date
Joey Hain
2d71f6de28 bytes and bytearray 2019-03-03 20:01:07 -08:00
Joey Hain
e7fb116210 Convert more objects to Any payload 2019-03-02 13:27:00 -08:00
Joey Hain
4558dbf210 Fix build (rustfmt) 2019-03-02 13:25:42 -08:00
Windel Bouwman
b98926a0fb Merge pull request #572 from RustPython/joey/fun-with-functions
Derive types, arity, conversions and more from rust fns
2019-03-02 20:56:52 +01:00
Windel Bouwman
30ddb48037 Use PyResult at more places. 2019-03-02 14:10:46 +01:00
Windel Bouwman
8847081e8b Merge pull request #582 from palaviv/socket-any
Use PyObjectPayload::AnyRustValue for socket
2019-03-02 13:45:48 +01:00
Joey Hain
3478251d40 Merge remote-tracking branch 'origin/master' into joey/fun-with-functions
Conflicts:
      vm/src/lib.rs
      vm/src/pyobject.rs
      wasm/lib/src/vm_class.rs
2019-03-02 04:04:22 -08:00
Joey Hain
a70f251b6a PyNativeFuncFactory => IntoPyNativeFunc 2019-03-02 03:47:37 -08:00
Aviv Palivoda
af2f790d0d Use PyObjectPayload::AnyRustValue for socket 2019-03-02 12:26:23 +02:00
Aviv Palivoda
aed657173f Simplify socket_close 2019-03-02 12:26:23 +02:00
Aviv Palivoda
e4007f530e Add get_socket function 2019-03-02 12:25:59 +02:00
Windel Bouwman
7bb6f8fdaa Minor clippy fix. 2019-03-02 11:22:40 +01:00
Windel Bouwman
8f52e15d32 Minor clippy fixes. 2019-03-02 11:14:35 +01:00
Windel Bouwman
c8afeae0f7 Merge pull request #577 from RustPython/kill_scope_variant
Remove Scope variant from PyObject.
2019-03-02 10:30:41 +01:00
coolreader18
58e1533b12 Fix clippy lint for float_is_integer 2019-03-01 20:12:54 -06:00
coolreader18
f364ea5943 Fix a bunch of clippy lints 2019-03-01 18:41:45 -06:00
Adam Kelly
9d6e9ac889 Move Scope from pyobject to frame. 2019-03-01 20:49:17 +00:00
Adam Kelly
c2e2441388 Remove Scope variant from PyObject. 2019-03-01 20:47:09 +00:00
Joey Hain
e2e3353441 Add factory impl for boxed fn and remove extra constructor 2019-03-01 11:39:52 -08:00
Adrian Wielgosik
1519426cb4 Support raising exceptions without call 2019-02-28 22:06:14 +01:00
Joey
990c29469a Merge remote-tracking branch 'origin/master' into joey/fun-with-functions
Conflicts:
      vm/src/pyobject.rs
2019-02-28 10:44:46 -08:00
Windel Bouwman
eaaafacd87 Merge pull request #554 from skinny121/isinstance
Call __instancecheck__ and __subclasscheck__
2019-02-28 17:14:12 +01:00
Adam Kelly
786eb2cbfb fetch_instruction can just return a reference. 2019-02-28 08:33:43 +00:00
ben
5779124f11 rustfmt 2019-02-28 20:40:32 +13:00
ben
e30d91febc Swap naming of is{instance, subclass} <-> real_is{instance, subclass} 2019-02-28 20:32:57 +13:00
ben
52c32fab3a Call __instancecheck__ and __subclasscheck__ as part of isinstance and issubclass 2019-02-28 20:30:31 +13:00
Windel Bouwman
b0ee1947c7 Merge pull request #565 from alexpantyukhin/add_kwarg_handling_to_int
add kwarg handling for int
2019-02-28 07:36:08 +01:00
Windel Bouwman
56e55e87fe Merge pull request #568 from RustPython/framestack_2
Framestack 2
2019-02-28 07:33:04 +01:00
Joey Hain
67f8c02087 cleanup 2019-02-27 20:05:04 -08:00
Joey Hain
713edc57ee Convert some objstring methods to new style. 2019-02-27 19:53:31 -08:00
Joey Hain
7f75e3ee8a Significant improvements to new function definition style
- PyRef<T> type for accepting references to payloads.
- Args<T> type for consuming remaining positional args
  (mirrors python `*args`).
- KwArgs<T> type for consuming remaining keyword args
  (mirrors python `*kwargs`).
- OptArg<T> type for consuming remaining keyword args
  (no python code equivalent, only possible in native functions like in cpython).
- PyIterable<T> for accepting an iterator over a sequence of Ts.
- Arity checking (but TypeError messages need work)
2019-02-27 19:53:20 -08:00
apantykhin
7e2c702c5e fix fmt 2019-02-27 21:22:24 +00:00
alexpantyukhin
d806a19c23 add kwarg handling for int 2019-02-27 19:58:32 +00:00
Aviv Palivoda
8087ccf274 Add socket.getsockname 2019-02-27 20:47:53 +02:00
Adam Kelly
2cc9a606da Avoid double borrow in Frame.nth_value. 2019-02-27 18:23:39 +00:00
Aviv Palivoda
dc0bd73d12 Fix compiler warnings 2019-02-27 20:23:02 +02:00
Aviv Palivoda
4191ba67b3 Copy instead of clone 2019-02-27 20:19:10 +02:00
Aviv Palivoda
716eb4afca Add validation to connect and bind address 2019-02-27 19:54:39 +02:00
Aviv Palivoda
dff6b0be36 Rename sk to socket_kind 2019-02-27 19:54:39 +02:00
Aviv Palivoda
2bdbc40a45 socket.recv read amount of bytes asked 2019-02-27 19:50:31 +02:00
Adam Kelly
676130fc49 Use refcells in frames to solve frame mutability problem. 2019-02-27 10:47:33 +00:00
Adam Kelly
4dd6592aad Keep a stack of frames in the VM. 2019-02-27 10:47:33 +00:00
Windel Bouwman
6c8584cc11 Merge pull request #564 from alexpantyukhin/int_shifts
add overflow errors for int shifts.
2019-02-27 10:55:19 +01:00
alexpantyukhin
70ad78eb21 fix error messages. 2019-02-27 13:22:27 +04:00
Windel Bouwman
9404c7c657 Merge pull request #548 from rickyhan/new_vm_fns
Move set_item to DictProtocol
2019-02-27 09:40:12 +01:00
Windel Bouwman
9a36951428 Merge pull request #559 from adrian17/list_sort
Add list.sort, sorted()
2019-02-27 09:24:22 +01:00
alexpantyukhin
15e6187583 add overflow errors for int shifts. 2019-02-27 11:11:38 +04:00
ricky han
30145ec6e2 cargo fmt 2019-02-26 17:47:03 -05:00
ricky han
830cc7e990 revert macro 2019-02-26 17:46:06 -05:00
ricky han
0a2aa1e64b fix compile 2019-02-26 17:39:56 -05:00