File tree Expand file tree Collapse file tree 2 files changed +6
-8
lines changed
branches/beta/src/doc/tarpl Expand file tree Collapse file tree 2 files changed +6
-8
lines changed Original file line number Diff line number Diff line change @@ -23,7 +23,7 @@ refs/tags/0.9: 36870b185fc5f5486636d4515f0e22677493f225
23
23
refs/tags/0.10: ac33f2b15782272ae348dbd7b14b8257b2148b5a
24
24
refs/tags/0.11.0: e1247cb1d0d681be034adb4b558b5a0c0d5720f9
25
25
refs/tags/0.12.0: f0c419429ef30723ceaf6b42f9b5a2aeb5d2e2d1
26
- refs/heads/beta: 5f02de3c226bce60c58ce2bc436e69c55b90a616
26
+ refs/heads/beta: 3f8e029bedba23b8b2d174fac2718f970a396676
27
27
refs/tags/1.0.0-alpha: e42bd6d93a1d3433c486200587f8f9e12590a4d7
28
28
refs/heads/tmp: 938f5d7af401e2d8238522fed4a612943b6e77fd
29
29
refs/tags/1.0.0-alpha.2: 4c705f6bc559886632d3871b04f58aab093bfa2f
Original file line number Diff line number Diff line change 1
1
% Coercions
2
2
3
3
Types can implicitly be coerced to change in certain contexts. These changes are
4
- generally just * weakening* of types, largely focused around pointers and lifetimes.
5
- They mostly exist to make Rust "just work" in more cases, and are largely harmless.
4
+ generally just * weakening* of types, largely focused around pointers and
5
+ lifetimes. They mostly exist to make Rust "just work" in more cases, and are
6
+ largely harmless.
6
7
7
8
Here's all the kinds of coercion:
8
9
9
-
10
10
Coercion is allowed between the following types:
11
11
12
- * Subtyping : ` T ` to ` U ` if ` T ` is a [ subtype ] [ ] of ` U `
13
- * Transitivity: ` T_1 ` to ` T_3 ` where ` T_1 ` coerces to ` T_2 ` and ` T_2 ` coerces to ` T_3 `
12
+ * Transitivity : ` T_1 ` to ` T_3 ` where ` T_1 ` coerces to ` T_2 ` and ` T_2 ` coerces to
13
+ ` T_3 `
14
14
* Pointer Weakening:
15
15
* ` &mut T ` to ` &T `
16
16
* ` *mut T ` to ` *const T `
@@ -68,5 +68,3 @@ fn main() {
68
68
<anon>:10 foo(t);
69
69
^~~
70
70
```
71
-
72
- [ subtype ] : subtyping.html
You can’t perform that action at this time.
0 commit comments