Wim Looman
7980bc4bbc
Hide gen_future API from documentation
2019-06-04 19:22:30 +02:00
Taylor Cramer
3f966dcd53
Stabilize futures_api
2019-04-23 16:13:53 -07:00
Taylor Cramer
1691e06db6
Future-proof the Futures API
2019-04-05 15:03:33 -07:00
Matthias Einwag
d9a4b22d32
Update the future/task API
...
This change updates the future and task API as discussed in the stabilization RFC at https://github.com/rust-lang/rfcs/pull/2592 .
Changes:
- Replacing UnsafeWake with RawWaker and RawWakerVtable
- Removal of LocalWaker
- Removal of Arc-based Wake trait
2019-02-03 13:46:53 -08:00
Wim Looman
a3fdee9a75
Change generator trait to use pinning
2019-01-27 22:58:53 +01:00
Aaron Hill
31cd65f712
Fix std::future::from_generator documentation
...
This function takes a generator and wraps it in a future, not
vice-versa.
2019-01-23 17:39:28 -05:00
Mark Rousskov
2a663555dd
Remove licenses
2018-12-25 21:08:33 -07:00
Taylor Cramer
20d694a95f
Update Pin API to match the one proposed for stabilization
...
Remove pin::Unpin reexport and add Unpin to the prelude.
Change Pin associated functions to methods.
Rename get_mut_unchecked_ to get_unchecked_mut
Remove impl Unpin for Pin
Mark Pin repr(transparent)
2018-12-21 20:41:24 -08:00
Ralf Jung
46a683111d
fix futures aliasing mutable and shared ref
2018-11-28 19:30:11 +01:00
Taylor Cramer
1b00f0b9fa
Remove spawning from task::Context
2018-09-19 15:01:19 -07:00
Without Boats
974bdc80fe
Update to a new pinning API.
2018-09-01 06:57:58 +02:00
Niv Kaminer
13da951868
move PinMut into pin module and export through std
2018-08-23 01:37:03 +03:00
Matthias Krüger
71120ef1e5
Fix typos found by codespell.
2018-08-19 17:41:28 +02:00
Taylor Cramer
3a93e914eb
Remove unnecessary local in await! macro
2018-08-02 13:07:55 -07:00
Josef Reinhard Brandl
3bcb85ee65
PinMut: Add safe get_mut and rename unsafe fns to get_mut_unchecked and map_unchecked
2018-06-23 18:29:56 +02:00
Taylor Cramer
9a310abf79
Remove impl trait names and move bits of await into a function
2018-06-22 16:08:07 -07:00
Taylor Cramer
ee51a3c10a
Review nits and updates
...
Move future_from_generator out of raw
Update await to use $crate
Renumber errors
2018-06-22 11:36:01 -07:00
Patrick Walton
0c820d4123
libstd: Rename libcore to libstd and libstd to libextra; update makefiles.
...
This only changes the directory names; it does not change the "real"
metadata names.
2013-05-22 21:57:05 -07:00
Corey Richardson
cc57ca012a
Use assert_eq! rather than assert! where possible
2013-05-19 08:16:02 -04:00
bors
3ee479f3e9
auto merge of #6577 : brson/rust/io-upstream, r=pcwalton
...
r?
This is all of my scheduler work on #4419 from the last 3 weeks or so. I've had a few failed pull requests so far but I think the problems are ironed out.
* TCP
* The beginnings of runtime embedding APIs
* Porting various corners of core to be compatible with both schedulers
* libuv timer bindings
* Further refinement of I/O error handling, including a new, incomplete, `read_error` condition
* Incomplete refactoring to make tasks work without coroutines and user-space scheduling
* Implementations of Reader/Writer extension methods
* Implementations of the most important part of core::comm
I'm particularly happy with how easy the [comm types on top of the scheduler](https://github.com/brson/rust/blob/io-upstream/src/libcore/rt/comm.rs ). Note that these implementations do not use pipes. If anything here needs careful review though it's this code.
This branch passes 95% of the run-pass tests (with `TESTARGS=--newrt`)
In the next week I'll probably spend some time adding preliminary multithreading and seeing how close we are to removing the old runtime.
2013-05-18 18:37:25 -07:00
Olivier Saut
4b13895c2f
Remove trailing whitespaces
2013-05-18 11:53:51 +02:00
Brian Anderson
26becc308e
core: Wire up oneshot pipes to newsched
2013-05-17 17:54:27 -07:00
Olivier Saut
7dc466f91f
Correct the example given for a future, add punctuation where necessary
2013-05-17 23:11:18 +02:00
Björn Steinbrink
bdc182cc41
Use static string with fail!() and remove fail!(fmt!())
...
fail!() used to require owned strings but can handle static strings
now. Also, it can pass its arguments to fmt!() on its own, no need for
the caller to call fmt!() itself.
2013-05-14 16:36:23 +02:00
Tim Chevalier
ed41864464
Warning police
2013-05-11 20:36:44 -07:00
Alex Crichton
998fececd6
Stop using the '<->' operator
2013-05-10 22:51:06 -04:00
Daniel Micay
2bc12635a2
remove vecs_implicitly_copyable from libstd/libcore
2013-05-09 14:00:53 -04:00
Patrick Walton
16a0125e41
libcore: Fix tests.
2013-05-08 17:04:01 -07:00
Patrick Walton
99daec602f
librustc: Fix merge fallout.
2013-05-08 17:04:00 -07:00
Patrick Walton
bba0680cb0
libstd: Remove mutable fields from future and par
2013-05-08 17:03:58 -07:00
Brian Anderson
8081e8debf
Register snapshots
2013-05-04 15:43:51 -07:00
Tim Chevalier
18bf9bd55a
std: Warning police
2013-05-03 16:56:33 -07:00
Patrick Walton
39693e7b61
test: Fix more tests.
2013-04-29 14:30:57 -07:00
Patrick Walton
37abf4bad0
librustc: Forbid type implementations on typedefs.
2013-04-29 14:30:57 -07:00
Daniel Micay
f792baba42
only use #[no_core] in libcore
2013-04-27 21:34:24 -04:00
Huon Wilson
d3be98e9f5
libcore,std,syntax,rustc: move tests into mod tests, make them private (no pub mod or pub fn).
2013-04-16 09:57:47 +10:00
Niko Matsakis
03396473b8
libstd: changes to in response to #5656
2013-04-10 17:32:03 -07:00
Patrick Walton
1e91595520
librustc: Remove fail_unless!
2013-03-29 16:39:08 -07:00
Alex Crichton
be57d745d2
Removing unused imports
2013-03-28 23:56:46 -04:00
Patrick Walton
c1084091d4
libstd: Remove all uses of pure from libstd. rs=depure
2013-03-22 10:29:17 -07:00
Patrick Walton
d4fee24c7c
librustc: Forbid destructors from being attached to any structs that might contain non-Owned fields. r=nmatsakis
2013-03-21 17:31:34 -07:00
Patrick Walton
352c070365
librustc: Convert all uses of old lifetime notation to new lifetime notation. rs=delifetiming
2013-03-18 17:21:14 -07:00
Patrick Walton
d7e74b5e91
librustc: Convert all uses of assert over to fail_unless!
2013-03-07 22:37:57 -08:00
Ben Striegel
0fed29cfb7
De-implicit-self libstd
2013-03-07 21:11:09 -05:00
Alex Crichton
dfb5c10dea
Remove unused imports throughout src/
2013-03-04 12:27:01 -05:00
Patrick Walton
a38cbebd8c
libstd: Remove fn@, fn~, and fn& from libstd. rs=defun
2013-03-02 16:49:31 -08:00
Alex Crichton
2df07ddc25
Fix implicit leaks of imports throughout libraries
...
Also touch up use of 'pub' and move some tests around so the tested functions
don't have to be 'pub'
2013-02-28 18:00:34 -05:00
Patrick Walton
107bf96ff0
librustc: Mark all type implementations public. rs=impl-publicity
2013-02-28 11:32:24 -08:00
Patrick Walton
8d7e6ef772
libsyntax: Forbid ~mut and ~const. rs=demuting
2013-02-27 09:40:15 -08:00
Brian Anderson
dab6a85230
core: Extract comm from pipes. #4742
2013-02-21 17:36:54 -08:00