Skip to content

Commit 9a5a8bf

Browse files
committed
---
yaml --- r: 36697 b: refs/heads/try2 c: fa4fbd5 h: refs/heads/master i: 36695: 06b93c0 v: v3
1 parent cf31115 commit 9a5a8bf

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: eb8fd119c65c67f3b1b8268cc7341c22d39b7b61
55
refs/heads/try: d324a424d8f84b1eb049b12cf34182bda91b0024
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: ed4fac01b5e207df0f0c7e0ea964bd3088826d27
8+
refs/heads/try2: fa4fbd51f6f8248e4308e079cbf2fc5588e08955
99
refs/heads/incoming: d9317a174e434d4c99fc1a37fd7dc0d2f5328d37
1010
refs/heads/dist-snap: 22efa39382d41b084fde1719df7ae8ce5697d8c9
1111
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/try2/doc/rust.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2740,11 +2740,11 @@ The kinds are:
27402740
`Const`
27412741
: Types of this kind are deeply immutable;
27422742
they contain no mutable memory locations directly or indirectly via pointers.
2743-
`Send`
2743+
`Owned`
27442744
: Types of this kind can be safely sent between tasks.
27452745
This kind includes scalars, owning pointers, owned closures, and
2746-
structural types containing only other sendable types.
2747-
`Owned`
2746+
structural types containing only other owned types. All `Owned` types are `Static`.
2747+
`Static`
27482748
: Types of this kind do not contain any borrowed pointers;
27492749
this can be a useful guarantee for code that breaks borrowing assumptions using [`unsafe` operations](#unsafe-functions).
27502750
`Copy`
@@ -2833,10 +2833,10 @@ frame they are allocated within.
28332833
A task owns all memory it can *safely* reach through local variables,
28342834
as well as managed, owning and borrowed pointers.
28352835

2836-
When a task sends a value that has the `Send` trait to another task,
2836+
When a task sends a value that has the `Owned` trait to another task,
28372837
it loses ownership of the value sent and can no longer refer to it.
28382838
This is statically guaranteed by the combined use of "move semantics",
2839-
and the compiler-checked _meaning_ of the `Send` trait:
2839+
and the compiler-checked _meaning_ of the `Owned` trait:
28402840
it is only instantiated for (transitively) sendable kinds of data constructor and pointers,
28412841
never including managed or borrowed pointers.
28422842

@@ -2971,7 +2971,7 @@ These include:
29712971
- read-only and read-write shared variables with various safe mutual exclusion patterns
29722972
- simple locks and semaphores
29732973

2974-
When such facilities carry values, the values are restricted to the [`Send` type-kind](#type-kinds).
2974+
When such facilities carry values, the values are restricted to the [`Owned` type-kind](#type-kinds).
29752975
Restricting communication interfaces to this kind ensures that no borrowed or managed pointers move between tasks.
29762976
Thus access to an entire data structure can be mediated through its owning "root" value;
29772977
no further locking or copying is required to avoid data races within the substructure of such a value.

branches/try2/doc/tutorial.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1914,9 +1914,9 @@ types by the compiler, and may not be overridden:
19141914
`copy` operator. All types are copyable unless they have destructors or
19151915
contain types with destructors.
19161916

1917-
* `Send` - Sendable (owned) types. All types are sendable unless they
1918-
contain managed boxes, managed closures, or otherwise managed
1919-
types. Sendable types may or may not be copyable.
1917+
* `Owned` - Owned types. Types are owned unless they contain managed
1918+
boxes, managed closures, or borrowed pointers. Owned types may or
1919+
may not be copyable.
19201920

19211921
* `Const` - Constant (immutable) types. These are types that do not contain
19221922
mutable fields.
@@ -1949,7 +1949,7 @@ may call it.
19491949
## Declaring and implementing traits
19501950

19511951
A trait consists of a set of methods, without bodies, or may be empty,
1952-
as is the case with `Copy`, `Send`, and `Const`. For example, we could
1952+
as is the case with `Copy`, `Owned`, and `Const`. For example, we could
19531953
declare the trait `Printable` for things that can be printed to the
19541954
console, with a single method:
19551955

0 commit comments

Comments
 (0)