| 
129 | 129 | //!  | 
130 | 130 | //! Note that the stack size of the main thread is *not* determined by Rust.  | 
131 | 131 | //!  | 
132 |  | -//! [channels]: ../../std/sync/mpsc/index.html  | 
133 |  | -//! [`Arc`]: ../../std/sync/struct.Arc.html  | 
134 |  | -//! [`spawn`]: ../../std/thread/fn.spawn.html  | 
135 |  | -//! [`JoinHandle`]: ../../std/thread/struct.JoinHandle.html  | 
136 |  | -//! [`JoinHandle::thread`]: ../../std/thread/struct.JoinHandle.html#method.thread  | 
137 |  | -//! [`join`]: ../../std/thread/struct.JoinHandle.html#method.join  | 
138 |  | -//! [`Result`]: ../../std/result/enum.Result.html  | 
139 |  | -//! [`Ok`]: ../../std/result/enum.Result.html#variant.Ok  | 
140 |  | -//! [`Err`]: ../../std/result/enum.Result.html#variant.Err  | 
141 |  | -//! [`panic!`]: ../../std/macro.panic.html  | 
142 |  | -//! [`Builder`]: ../../std/thread/struct.Builder.html  | 
143 |  | -//! [`Builder::stack_size`]: ../../std/thread/struct.Builder.html#method.stack_size  | 
144 |  | -//! [`Builder::name`]: ../../std/thread/struct.Builder.html#method.name  | 
145 |  | -//! [`thread::current`]: ../../std/thread/fn.current.html  | 
146 |  | -//! [`thread::Result`]: ../../std/thread/type.Result.html  | 
147 |  | -//! [`Thread`]: ../../std/thread/struct.Thread.html  | 
148 |  | -//! [`park`]: ../../std/thread/fn.park.html  | 
149 |  | -//! [`unpark`]: ../../std/thread/struct.Thread.html#method.unpark  | 
150 |  | -//! [`Thread::name`]: ../../std/thread/struct.Thread.html#method.name  | 
151 |  | -//! [`thread::park_timeout`]: ../../std/thread/fn.park_timeout.html  | 
152 |  | -//! [`Cell`]: ../cell/struct.Cell.html  | 
153 |  | -//! [`RefCell`]: ../cell/struct.RefCell.html  | 
154 |  | -//! [`thread_local!`]: ../macro.thread_local.html  | 
155 |  | -//! [`with`]: struct.LocalKey.html#method.with  | 
 | 132 | +//! [channels]: crate::sync::mpsc  | 
 | 133 | +//! [`join`]: JoinHandle::join  | 
 | 134 | +//! [`Result`]: crate::result::Result  | 
 | 135 | +//! [`Ok`]: crate::result::Result::Ok  | 
 | 136 | +//! [`Err`]: crate::result::Result::Err  | 
 | 137 | +//! [`thread::current`]: current  | 
 | 138 | +//! [`thread::Result`]: Result  | 
 | 139 | +//! [`unpark`]: Thread::unpark  | 
 | 140 | +//! [`Thread::name`]: Thread::name  | 
 | 141 | +//! [`thread::park_timeout`]: park_timeout  | 
 | 142 | +//! [`Cell`]: crate::cell::Cell  | 
 | 143 | +//! [`RefCell`]: crate::cell::RefCell  | 
 | 144 | +//! [`with`]: LocalKey::with  | 
156 | 145 | 
  | 
157 | 146 | #![stable(feature = "rust1", since = "1.0.0")]  | 
158 | 147 | 
 
  | 
@@ -245,12 +234,12 @@ pub use self::local::statik::Key as __StaticLocalKeyInner;  | 
245 | 234 | /// handler.join().unwrap();  | 
246 | 235 | /// ```  | 
247 | 236 | ///  | 
248 |  | -/// [`thread::spawn`]: ../../std/thread/fn.spawn.html  | 
249 |  | -/// [`stack_size`]: ../../std/thread/struct.Builder.html#method.stack_size  | 
250 |  | -/// [`name`]: ../../std/thread/struct.Builder.html#method.name  | 
251 |  | -/// [`spawn`]: ../../std/thread/struct.Builder.html#method.spawn  | 
252 |  | -/// [`io::Result`]: ../../std/io/type.Result.html  | 
253 |  | -/// [`unwrap`]: ../../std/result/enum.Result.html#method.unwrap  | 
 | 237 | +/// [`stack_size`]: Builder::stack_size  | 
 | 238 | +/// [`name`]: Builder::name  | 
 | 239 | +/// [`spawn`]: Builder::spawn  | 
 | 240 | +/// [`thread::spawn`]: spawn  | 
 | 241 | +/// [`io::Result`]: crate::io::Result  | 
 | 242 | +/// [`unwrap`]: crate::result::Result::unwrap  | 
254 | 243 | /// [naming-threads]: ./index.html#naming-threads  | 
255 | 244 | /// [stack-size]: ./index.html#stack-size  | 
256 | 245 | #[stable(feature = "rust1", since = "1.0.0")]  | 
@@ -355,9 +344,7 @@ impl Builder {  | 
355 | 344 |     /// [`io::Result`] to capture any failure to create the thread at  | 
356 | 345 |     /// the OS level.  | 
357 | 346 |     ///  | 
358 |  | -    /// [`spawn`]: ../../std/thread/fn.spawn.html  | 
359 |  | -    /// [`io::Result`]: ../../std/io/type.Result.html  | 
360 |  | -    /// [`JoinHandle`]: ../../std/thread/struct.JoinHandle.html  | 
 | 347 | +    /// [`io::Result`]: crate::io::Result  | 
361 | 348 |     ///  | 
362 | 349 |     /// # Panics  | 
363 | 350 |     ///  | 
@@ -443,11 +430,7 @@ impl Builder {  | 
443 | 430 |     /// handler.join().unwrap();  | 
444 | 431 |     /// ```  | 
445 | 432 |     ///  | 
446 |  | -    /// [`spawn`]: ../../std/thread/fn.spawn.html  | 
447 |  | -    /// [`Builder::spawn`]: ../../std/thread/struct.Builder.html#method.spawn  | 
448 |  | -    /// [`io::Result`]: ../../std/io/type.Result.html  | 
449 |  | -    /// [`JoinHandle`]: ../../std/thread/struct.JoinHandle.html  | 
450 |  | -    /// [`JoinHandle::join`]: ../../std/thread/struct.JoinHandle.html#method.join  | 
 | 433 | +    /// [`io::Result`]: crate::io::Result  | 
451 | 434 |     #[unstable(feature = "thread_spawn_unchecked", issue = "55132")]  | 
452 | 435 |     pub unsafe fn spawn_unchecked<'a, F, T>(self, f: F) -> io::Result<JoinHandle<T>>  | 
453 | 436 |     where  | 
@@ -513,7 +496,7 @@ impl Builder {  | 
513 | 496 | /// the main thread finishes). Additionally, the join handle provides a [`join`]  | 
514 | 497 | /// method that can be used to join the child thread. If the child thread  | 
515 | 498 | /// panics, [`join`] will return an [`Err`] containing the argument given to  | 
516 |  | -/// [`panic`].  | 
 | 499 | +/// [`panic!`].  | 
517 | 500 | ///  | 
518 | 501 | /// This will create a thread using default parameters of [`Builder`], if you  | 
519 | 502 | /// want to specify the stack size or the name of the thread, use this API  | 
@@ -600,15 +583,9 @@ impl Builder {  | 
600 | 583 | /// println!("{}", result);  | 
601 | 584 | /// ```  | 
602 | 585 | ///  | 
603 |  | -/// [`channels`]: ../../std/sync/mpsc/index.html  | 
604 |  | -/// [`JoinHandle`]: ../../std/thread/struct.JoinHandle.html  | 
605 |  | -/// [`join`]: ../../std/thread/struct.JoinHandle.html#method.join  | 
606 |  | -/// [`Err`]: ../../std/result/enum.Result.html#variant.Err  | 
607 |  | -/// [`panic`]: ../../std/macro.panic.html  | 
608 |  | -/// [`Builder::spawn`]: ../../std/thread/struct.Builder.html#method.spawn  | 
609 |  | -/// [`Builder`]: ../../std/thread/struct.Builder.html  | 
610 |  | -/// [`Send`]: ../../std/marker/trait.Send.html  | 
611 |  | -/// [`Sync`]: ../../std/marker/trait.Sync.html  | 
 | 586 | +/// [`channels`]: crate::sync::mpsc  | 
 | 587 | +/// [`join`]: JoinHandle::join  | 
 | 588 | +/// [`Err`]: crate::result::Result::Err  | 
612 | 589 | #[stable(feature = "rust1", since = "1.0.0")]  | 
613 | 590 | pub fn spawn<F, T>(f: F) -> JoinHandle<T>  | 
614 | 591 | where  | 
@@ -673,11 +650,8 @@ pub fn current() -> Thread {  | 
673 | 650 | /// thread::yield_now();  | 
674 | 651 | /// ```  | 
675 | 652 | ///  | 
676 |  | -/// [`channel`]: ../../std/sync/mpsc/index.html  | 
677 |  | -/// [`spawn`]: ../../std/thread/fn.spawn.html  | 
678 |  | -/// [`join`]: ../../std/thread/struct.JoinHandle.html#method.join  | 
679 |  | -/// [`Mutex`]: ../../std/sync/struct.Mutex.html  | 
680 |  | -/// [`Condvar`]: ../../std/sync/struct.Condvar.html  | 
 | 653 | +/// [`channel`]: crate::sync::mpsc  | 
 | 654 | +/// [`join`]: JoinHandle::join  | 
681 | 655 | #[stable(feature = "rust1", since = "1.0.0")]  | 
682 | 656 | pub fn yield_now() {  | 
683 | 657 |     imp::Thread::yield_now()  | 
@@ -723,8 +697,6 @@ pub fn yield_now() {  | 
723 | 697 | ///     panic!()  | 
724 | 698 | /// }  | 
725 | 699 | /// ```  | 
726 |  | -///  | 
727 |  | -/// [Mutex]: ../../std/sync/struct.Mutex.html  | 
728 | 700 | #[inline]  | 
729 | 701 | #[stable(feature = "rust1", since = "1.0.0")]  | 
730 | 702 | pub fn panicking() -> bool {  | 
@@ -881,10 +853,8 @@ const NOTIFIED: usize = 2;  | 
881 | 853 | /// parked_thread.join().unwrap();  | 
882 | 854 | /// ```  | 
883 | 855 | ///  | 
884 |  | -/// [`Thread`]: ../../std/thread/struct.Thread.html  | 
885 |  | -/// [`park`]: ../../std/thread/fn.park.html  | 
886 |  | -/// [`unpark`]: ../../std/thread/struct.Thread.html#method.unpark  | 
887 |  | -/// [`thread::park_timeout`]: ../../std/thread/fn.park_timeout.html  | 
 | 856 | +/// [`unpark`]: Thread::unpark  | 
 | 857 | +/// [`thread::park_timeout`]: park_timeout  | 
888 | 858 | //  | 
889 | 859 | // The implementation currently uses the trivial strategy of a Mutex+Condvar  | 
890 | 860 | // with wakeup flag, which does not actually allow spurious wakeups. In the  | 
@@ -939,9 +909,6 @@ pub fn park() {  | 
939 | 909 | /// amount of time waited to be precisely `ms` long.  | 
940 | 910 | ///  | 
941 | 911 | /// See the [park documentation][`park`] for more detail.  | 
942 |  | -///  | 
943 |  | -/// [`park_timeout`]: fn.park_timeout.html  | 
944 |  | -/// [`park`]: ../../std/thread/fn.park.html  | 
945 | 912 | #[stable(feature = "rust1", since = "1.0.0")]  | 
946 | 913 | #[rustc_deprecated(since = "1.6.0", reason = "replaced by `std::thread::park_timeout`")]  | 
947 | 914 | pub fn park_timeout_ms(ms: u32) {  | 
@@ -986,8 +953,6 @@ pub fn park_timeout_ms(ms: u32) {  | 
986 | 953 | ///     timeout_remaining = timeout - elapsed;  | 
987 | 954 | /// }  | 
988 | 955 | /// ```  | 
989 |  | -///  | 
990 |  | -/// [park]: fn.park.html  | 
991 | 956 | #[stable(feature = "park_timeout", since = "1.4.0")]  | 
992 | 957 | pub fn park_timeout(dur: Duration) {  | 
993 | 958 |     let thread = current();  | 
@@ -1046,8 +1011,7 @@ pub fn park_timeout(dur: Duration) {  | 
1046 | 1011 | /// assert!(thread::current().id() != other_thread_id);  | 
1047 | 1012 | /// ```  | 
1048 | 1013 | ///  | 
1049 |  | -/// [`id`]: ../../std/thread/struct.Thread.html#method.id  | 
1050 |  | -/// [`Thread`]: ../../std/thread/struct.Thread.html  | 
 | 1014 | +/// [`id`]: Thread::id  | 
1051 | 1015 | #[stable(feature = "thread_id", since = "1.19.0")]  | 
1052 | 1016 | #[derive(Eq, PartialEq, Clone, Copy, Hash, Debug)]  | 
1053 | 1017 | pub struct ThreadId(NonZeroU64);  | 
@@ -1124,12 +1088,7 @@ struct Inner {  | 
1124 | 1088 | /// should instead use a function like `spawn` to create new threads, see the  | 
1125 | 1089 | /// docs of [`Builder`] and [`spawn`] for more details.  | 
1126 | 1090 | ///  | 
1127 |  | -/// [`Builder`]: ../../std/thread/struct.Builder.html  | 
1128 |  | -/// [`JoinHandle::thread`]: ../../std/thread/struct.JoinHandle.html#method.thread  | 
1129 |  | -/// [`JoinHandle`]: ../../std/thread/struct.JoinHandle.html  | 
1130 |  | -/// [`thread::current`]: ../../std/thread/fn.current.html  | 
1131 |  | -/// [`spawn`]: ../../std/thread/fn.spawn.html  | 
1132 |  | -
  | 
 | 1091 | +/// [`thread::current`]: current  | 
1133 | 1092 | pub struct Thread {  | 
1134 | 1093 |     inner: Arc<Inner>,  | 
1135 | 1094 | }  | 
@@ -1181,8 +1140,6 @@ impl Thread {  | 
1181 | 1140 |     ///  | 
1182 | 1141 |     /// parked_thread.join().unwrap();  | 
1183 | 1142 |     /// ```  | 
1184 |  | -    ///  | 
1185 |  | -    /// [park]: fn.park.html  | 
1186 | 1143 |     #[stable(feature = "rust1", since = "1.0.0")]  | 
1187 | 1144 |     pub fn unpark(&self) {  | 
1188 | 1145 |         // To ensure the unparked thread will observe any writes we made  | 
@@ -1326,7 +1283,7 @@ impl fmt::Debug for Thread {  | 
1326 | 1283 | /// }  | 
1327 | 1284 | /// ```  | 
1328 | 1285 | ///  | 
1329 |  | -/// [`Result`]: ../../std/result/enum.Result.html  | 
 | 1286 | +/// [`Result`]: crate::result::Result  | 
1330 | 1287 | #[stable(feature = "rust1", since = "1.0.0")]  | 
1331 | 1288 | pub type Result<T> = crate::result::Result<T, Box<dyn Any + Send + 'static>>;  | 
1332 | 1289 | 
 
  | 
@@ -1421,9 +1378,8 @@ impl<T> JoinInner<T> {  | 
1421 | 1378 | /// thread::sleep(Duration::from_millis(1000));  | 
1422 | 1379 | /// ```  | 
1423 | 1380 | ///  | 
1424 |  | -/// [`Clone`]: ../../std/clone/trait.Clone.html  | 
1425 |  | -/// [`thread::spawn`]: fn.spawn.html  | 
1426 |  | -/// [`thread::Builder::spawn`]: struct.Builder.html#method.spawn  | 
 | 1381 | +/// [`thread::Builder::spawn`]: Builder::spawn  | 
 | 1382 | +/// [`thread::spawn`]: spawn  | 
1427 | 1383 | #[stable(feature = "rust1", since = "1.0.0")]  | 
1428 | 1384 | pub struct JoinHandle<T>(JoinInner<T>);  | 
1429 | 1385 | 
 
  | 
@@ -1462,11 +1418,10 @@ impl<T> JoinHandle<T> {  | 
1462 | 1418 |     /// operations that happen after `join` returns.  | 
1463 | 1419 |     ///  | 
1464 | 1420 |     /// If the child thread panics, [`Err`] is returned with the parameter given  | 
1465 |  | -    /// to [`panic`].  | 
 | 1421 | +    /// to [`panic!`].  | 
1466 | 1422 |     ///  | 
1467 |  | -    /// [`Err`]: ../../std/result/enum.Result.html#variant.Err  | 
1468 |  | -    /// [`panic`]: ../../std/macro.panic.html  | 
1469 |  | -    /// [atomic memory orderings]: ../../std/sync/atomic/index.html  | 
 | 1423 | +    /// [`Err`]: crate::result::Result::Err  | 
 | 1424 | +    /// [atomic memory orderings]: crate::sync::atomic  | 
1470 | 1425 |     ///  | 
1471 | 1426 |     /// # Panics  | 
1472 | 1427 |     ///  | 
 | 
0 commit comments