diff --git a/doc/rust.md b/doc/rust.md index 1db9dac9b58..eed75c359cd 100644 --- a/doc/rust.md +++ b/doc/rust.md @@ -2869,9 +2869,6 @@ The kinds are: : Types of this kind can be safely sent between tasks. This kind includes scalars, owning pointers, owned closures, and structural types containing only other owned types. All `Send` types are `Static`. -`Static` - : Types of this kind do not contain any borrowed pointers; - this can be a useful guarantee for code that breaks borrowing assumptions using [`unsafe` operations](#unsafe-functions). `Copy` : This kind includes all types that can be copied. All types with sendable kind are copyable, as are managed boxes, managed closures, @@ -2879,14 +2876,12 @@ The kinds are: Types with destructors (types that implement `Drop`) can not implement `Copy`. `Drop` : This is not strictly a kind, but its presence interacts with kinds: the `Drop` - trait provides a single method `finalize` that takes no parameters, and is run + trait provides a single method `drop` that takes no parameters, and is run when values of the type are dropped. Such a method is called a "destructor", and are always executed in "top-down" order: a value is completely destroyed before any of the values it owns run their destructors. Only `Send` types that do not implement `Copy` can implement `Drop`. -> **Note:** The `finalize` method may be renamed in future versions of Rust. - _Default_ : Types with destructors, closure environments, and various other _non-first-class_ types, diff --git a/src/libstd/bool.rs b/src/libstd/bool.rs index e6be164099b..b0b586df4b5 100644 --- a/src/libstd/bool.rs +++ b/src/libstd/bool.rs @@ -122,6 +122,7 @@ pub fn xor(a: bool, b: bool) -> bool { (a && !b) || (!a && b) } * ~~~ {.rust} * rusti> std::bool::implies(true, true) * true +* ~~~ * * ~~~ {.rust} * rusti> std::bool::implies(true, false) diff --git a/src/libstd/kinds.rs b/src/libstd/kinds.rs index f350e106168..6c16ecc0d4e 100644 --- a/src/libstd/kinds.rs +++ b/src/libstd/kinds.rs @@ -18,7 +18,7 @@ They cannot be implemented by user code, but are instead implemented by the compiler automatically for the types to which they apply. -The 4 kinds are +The 3 kinds are * Copy - types that may be copied without allocation. This includes scalar types and managed pointers, and exludes owned pointers. It