diff --git a/src/libcore/cast.rs b/src/libcore/cast.rs index f752f52ce539..c1c7bd237702 100644 --- a/src/libcore/cast.rs +++ b/src/libcore/cast.rs @@ -8,6 +8,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +//! Unsafe casting functions + pub mod rusti { #[abi = "rust-intrinsic"] #[link_name = "rusti"] diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index bf5f93159381..2c29dbd2e942 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -8,13 +8,17 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +//! A mutable, nullable memory location + use cast::transmute; use option; use prelude::*; -/// A dynamic, mutable location. -/// -/// Similar to a mutable option type, but friendlier. +/* +A dynamic, mutable location. + +Similar to a mutable option type, but friendlier. +*/ pub struct Cell { mut value: Option diff --git a/src/libcore/clone.rs b/src/libcore/clone.rs index af44f68601bc..7b86355c91e5 100644 --- a/src/libcore/clone.rs +++ b/src/libcore/clone.rs @@ -8,9 +8,20 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -/** -Clonable types are copied with the clone method +/*! The Clone trait for types that cannot be "implicitly copied" + +In Rust, some simple types are "implicitly copyable" and when you +assign them or pass them as arguments, the receiver will get a copy, +leaving the original value in place. These types do not require +allocation to copy and do not have finalizers (i.e. they do not +contain owned pointers or implement `Drop`), so the compiler considers +them cheap and safe to copy and automatically implements the `Copy` +trait for them. For other types copies must be made explicitly, +by convention implementing the `Clone` trait and calling the +`clone` method. + */ + pub trait Clone { fn clone(&self) -> Self; } diff --git a/src/libcore/comm.rs b/src/libcore/comm.rs index 6dadca8dc57b..f749d46bcab1 100644 --- a/src/libcore/comm.rs +++ b/src/libcore/comm.rs @@ -8,6 +8,10 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +/*! +Message passing +*/ + use cast; use either::{Either, Left, Right}; use kinds::Owned; diff --git a/src/libcore/condition.rs b/src/libcore/condition.rs index 767b6ecfad4b..6b5d8b91439e 100644 --- a/src/libcore/condition.rs +++ b/src/libcore/condition.rs @@ -8,6 +8,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +/*! Condition handling */ + use prelude::*; use task; use task::local_data::{local_data_pop, local_data_set}; diff --git a/src/libcore/rt/mod.rs b/src/libcore/rt/mod.rs index 04891a1673c0..a7b3fb1355c7 100644 --- a/src/libcore/rt/mod.rs +++ b/src/libcore/rt/mod.rs @@ -8,6 +8,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +#[doc(hidden)]; + use libc::c_char; // Some basic logging