Alex Crichton
0c7c93b8e8
std: Improve non-task-based usage
...
A few notable improvements were implemented to cut down on the number of aborts
triggered by the standard library when a local task is not found.
* Primarily, the unwinding functionality was restructured to support an unsafe
top-level function, `try`. This function invokes a closure, capturing any
failure which occurs inside of it. The purpose of this function is to be as
lightweight of a "try block" as possible for rust, intended for use when the
runtime is difficult to set up.
This function is *not* meant to be used by normal rust code, nor should it be
consider for use with normal rust code.
* When invoking spawn(), a `fail!()` is triggered rather than an abort.
* When invoking LocalIo::borrow(), which is transitively called by all I/O
constructors, None is returned rather than aborting to indicate that there is
no local I/O implementation.
* Invoking get() on a TLD key will return None if no task is available
* Invoking replace() on a TLD key will fail if no task is available.
A test case was also added showing the variety of things that you can do without
a runtime or task set up now. In general, this is just a refactoring to abort
less quickly in the standard library when a local task is not found.
2014-06-04 11:13:12 -07:00
..
2014-05-17 01:01:47 -07:00
2014-05-24 21:48:10 -07:00
2014-05-27 21:44:51 -07:00
2014-05-13 17:24:08 -07:00
2014-05-30 15:52:24 -07:00
2014-05-24 16:49:46 -07:00
2014-05-30 17:55:41 +01:00
2014-05-27 21:44:51 -07:00
2014-05-22 14:42:02 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-28 08:35:41 -07:00
2014-05-27 12:59:31 -07:00
2014-05-13 17:24:08 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-13 17:24:08 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 11:11:15 -07:00
2014-05-28 08:35:41 -07:00
2014-05-30 15:52:24 -07:00
2014-05-18 13:03:38 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-22 14:42:01 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-28 08:35:41 -07:00
2014-05-13 17:24:08 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-17 22:10:39 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-24 21:48:10 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-13 17:24:07 -07:00
2014-05-13 17:24:07 -07:00
2014-05-13 17:24:07 -07:00
2014-05-13 17:24:07 -07:00
2014-05-27 11:11:15 -07:00
2014-05-24 21:48:10 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 11:11:15 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 21:44:51 -07:00
2014-05-14 22:52:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-06-01 10:31:27 -07:00
2014-06-01 10:31:27 -07:00
2014-06-01 10:31:27 -07:00
2014-06-01 10:31:27 -07:00
2014-06-01 10:31:27 -07:00
2014-05-30 17:55:41 +01:00
2014-05-30 15:52:24 -07:00
2014-06-01 10:31:27 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-29 16:18:26 -07:00
2014-06-01 10:31:27 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-11 01:13:02 -07:00
2014-05-11 01:13:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-22 23:01:47 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-06-02 12:08:19 +09:00
2014-06-02 12:08:19 +09:00
2014-05-30 15:52:24 -07:00
2014-05-27 21:44:51 -07:00
2014-05-09 21:13:02 -07:00
2014-05-15 13:50:50 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-13 17:24:08 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 11:11:15 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-11 01:13:02 -07:00
2014-05-13 17:24:08 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 11:11:15 -07:00
2014-05-11 01:13:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 21:44:51 -07:00
2014-05-28 08:35:41 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-24 21:48:10 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-22 14:42:02 -07:00
2014-05-24 21:48:10 -07:00
2014-05-24 21:48:10 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 21:44:51 -07:00
2014-06-03 15:38:04 -04:00
2014-05-27 12:59:31 -07:00
2014-05-11 01:13:02 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-24 21:48:10 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-20 20:28:00 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-24 21:48:10 -07:00
2014-05-06 23:12:54 -07:00
2014-05-13 17:24:07 -07:00
2014-05-06 23:12:54 -07:00
2014-05-24 21:48:10 -07:00
2014-05-24 21:48:10 -07:00
2014-05-28 08:35:41 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 21:03:59 -07:00
2014-05-24 21:48:10 -07:00
2014-05-14 22:52:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-23 20:55:57 -07:00
2014-05-20 21:14:20 -07:00
2014-06-02 09:24:03 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-20 21:24:01 -07:00
2014-05-30 17:55:41 +01:00
2014-06-01 10:31:27 -07:00
2014-05-27 12:59:31 -07:00
2014-06-02 07:46:32 +02:00
2014-05-15 15:32:15 -07:00
2014-05-20 01:08:05 +01:00
2014-05-20 19:52:24 -07:00
2014-05-27 09:04:08 -07:00
2014-05-27 09:04:08 -07:00
2014-05-27 17:49:31 -07:00
2014-06-03 15:38:04 -04:00
2014-05-27 12:59:31 -07:00
2014-05-24 16:49:46 -07:00
2014-05-06 23:12:54 -07:00
2014-05-24 21:48:10 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-22 14:42:02 -07:00
2014-05-22 14:42:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-22 14:42:02 -07:00
2014-05-28 08:35:41 -07:00
2014-05-28 08:35:41 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 11:11:15 -07:00
2014-05-25 22:33:12 -07:00
2014-05-07 23:43:39 -07:00
2014-05-28 12:42:21 -07:00
2014-05-28 08:35:41 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-24 16:49:46 -07:00
2014-05-28 08:35:41 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-24 21:48:10 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 11:11:15 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-15 23:22:06 -07:00
2014-05-30 15:52:24 -07:00
2014-05-16 17:24:49 -04:00
2014-05-27 12:59:31 -07:00
2014-05-14 14:58:00 -07:00
2014-05-13 17:24:08 -07:00
2014-05-13 17:24:08 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-22 14:42:02 -07:00
2014-05-14 22:52:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-11 01:13:02 -07:00
2014-05-14 14:58:00 -07:00
2014-05-11 01:13:02 -07:00
2014-05-14 14:58:00 -07:00
2014-05-30 15:52:24 -07:00
2014-05-11 01:13:02 -07:00
2014-05-14 14:58:00 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-14 22:52:31 -07:00
2014-05-28 08:35:41 -07:00
2014-05-11 01:13:02 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-06-01 10:31:27 -07:00
2014-05-11 01:13:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-06-04 11:13:12 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-28 08:35:41 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 11:11:15 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-13 17:24:08 -07:00
2014-05-27 21:44:51 -07:00
2014-05-14 22:52:31 -07:00
2014-05-23 15:27:48 -07:00
2014-05-23 15:27:48 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-19 11:04:44 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-28 08:35:41 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-28 08:35:41 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-06-02 12:08:19 +09:00
2014-05-30 15:52:24 -07:00
2014-05-22 14:42:02 -07:00
2014-05-15 11:09:26 +02:00
2014-05-15 11:09:26 +02:00
2014-05-15 11:09:26 +02:00
2014-05-15 11:09:26 +02:00
2014-05-15 11:09:26 +02:00
2014-05-15 11:09:26 +02:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-11 01:13:02 -07:00
2014-05-11 01:13:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-11 01:13:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 12:59:31 -07:00
2014-05-06 23:12:54 -07:00
2014-05-22 14:42:01 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-22 14:42:01 -07:00
2014-05-13 17:24:08 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-28 08:35:41 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 12:59:31 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-28 08:35:41 -07:00
2014-05-27 11:11:15 -07:00
2014-05-28 08:35:41 -07:00
2014-05-11 01:13:02 -07:00
2014-05-27 21:44:51 -07:00
2014-05-27 21:44:51 -07:00
2014-05-30 15:52:24 -07:00
2014-05-06 23:12:54 -07:00
2014-05-20 23:06:54 -07:00
2014-05-11 01:13:02 -07:00
2014-05-23 20:55:57 -07:00
2014-05-27 11:11:15 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-30 15:52:24 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-27 21:44:51 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-13 17:24:07 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-06 23:12:54 -07:00
2014-05-12 19:52:29 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-05-09 21:13:02 -07:00
2014-05-27 12:59:31 -07:00
2014-05-13 17:24:08 -07:00
2014-05-27 12:59:31 -07:00
2014-05-27 12:59:31 -07:00
2014-06-01 10:31:27 -07:00
2014-05-19 11:04:44 -07:00
2014-05-30 15:52:24 -07:00