@@ -30,12 +30,12 @@ items are defined in [implementations] and declared in [traits]. Only
30
30
functions, constants, and type aliases can be associated. Contrast to a [ free
31
31
item] .
32
32
33
- ### Blanket Implementation
33
+ ### Blanket implementation
34
34
35
35
Any implementation where a type appears [ uncovered] ( #uncovered-type ) . `impl<T > Foo
36
36
for T` , ` impl<T > Bar<T > for T` , ` impl<T > Bar<Vec<T >> for T` , and ` impl<T > Bar<T >
37
37
for Vec<T >` are considered blanket impls. However, ` impl<T > Bar<Vec<T >> for
38
- Vec<T >` is not a blanket impl, as all instances of ` T` which appear in this impl
38
+ Vec<T >` is not a blanket impl, as all instances of ` T` which appear in this ` impl`
39
39
are covered by ` Vec ` .
40
40
41
41
### Bound
@@ -73,12 +73,12 @@ For example, `2 + (3 * 4)` is an expression that returns the value 14.
73
73
An [ item] that is not a member of an [ implementation] , such as a * free
74
74
function* or a * free const* . Contrast to an [ associated item] .
75
75
76
- ### Fundamental Type
76
+ ### Fundamental type
77
77
78
78
Includes ` & ` , ` &mut ` , ` Box ` and ` Pin ` . Any time a type ` T ` is
79
- considered [ local] ( #local-type ) , ` &T ` , ` &mut T ` , ` Box<T> ` and ` Pin<T> ` are also considered local.
79
+ considered [ local] ( #local-type ) , ` &T ` , ` &mut T ` , ` Box<T> ` , and ` Pin<T> ` are also considered local.
80
80
Fundamental types cannot [ cover] ( #uncovered-type ) other types. Any time the term "covered type" is
81
- used, the ` T ` in ` &T ` , ` &mut T ` , ` Box<T> ` and ` Pin<T> ` is not considered covered.
81
+ used, the ` T ` in ` &T ` , ` &mut T ` , ` Box<T> ` , and ` Pin<T> ` is not considered covered.
82
82
83
83
### Inhabited
84
84
@@ -102,18 +102,18 @@ A variable is initialized if it has been assigned a value and hasn't since been
102
102
moved from. All other memory locations are assumed to be uninitialized. Only
103
103
unsafe Rust can create such a memory without initializing it.
104
104
105
- ### Local Trait
105
+ ### Local trait
106
106
107
- A trait which was defined in the current crate. Whether a trait is
108
- local or not has nothing to do with type parameters . Given ` trait Foo<T, U> ` ,
109
- ` Foo ` is always local, regardless of the types used for ` T ` or ` U ` .
107
+ A ` trait ` which was defined in the current crate. A trait definition is local
108
+ or not independent of applied type arguments . Given ` trait Foo<T, U> ` ,
109
+ ` Foo ` is always local, regardless of the types substituted for ` T ` and ` U ` .
110
110
111
- ### Local Type
111
+ ### Local type
112
112
113
- A struct, enum, or union which was defined in the current crate.
114
- This is not affected by type parameters . ` struct Foo ` is considered local, but
115
- ` Vec<Foo> ` is not. ` LocalType<ForeignType> ` is local. Type aliases and trait
116
- aliases do not affect locality.
113
+ A ` struct ` , ` enum ` , or ` union ` which was defined in the current crate.
114
+ This is not affected by applied type arguments . ` struct Foo ` is considered local, but
115
+ ` Vec<Foo> ` is not. ` LocalType<ForeignType> ` is local. Type aliases do not
116
+ affect locality.
117
117
118
118
### Nominal types
119
119
@@ -186,11 +186,11 @@ It allows a type to make certain promises about its behavior.
186
186
187
187
Generic functions and generic structs can use traits to constrain, or bound, the types they accept.
188
188
189
- ### Uncovered Type
189
+ ### Uncovered type
190
190
191
- A type which does not appear as a parameter to another type. For example,
191
+ A type which does not appear as an argument to another type. For example,
192
192
` T ` is uncovered, but the ` T ` in ` Vec<T> ` is covered. This is only relevant for
193
- type parameters .
193
+ type arguments .
194
194
195
195
### Undefined behavior
196
196
0 commit comments