Skip to content

Commit 136bd7d

Browse files
authored
semantic type -> resolved type
1 parent 1be2f2c commit 136bd7d

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

src/items/associated-items.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -98,18 +98,18 @@ Associated functions whose first parameter is named `self` are called *methods*
9898
and may be invoked using the [method call operator], for example, `x.foo()`, as
9999
well as the usual function call notation.
100100

101-
If the type of the `self` parameter is specified, it is limited to semantic
102-
types generated by the following grammar (where `'lt` denotes some arbitrary
101+
If the type of the `self` parameter is specified, it is limited to types resolving
102+
to one generated by the following grammar (where `'lt` denotes some arbitrary
103103
lifetime):
104104

105105
```text
106106
P = &'lt S | &'lt mut S | Box<S> | Rc<S> | Arc<S> | Pin<P>
107107
S = Self | P
108108
```
109109

110-
The `Self` terminal in this grammar is the semantic `Self` type and can be
111-
replaced with the type being implemented, including type aliases or associated
112-
type projections for the type.
110+
The `Self` terminal in this grammar denotes a type resolving to the implementing type.
111+
This can also include the contextual type alias `Self`, other type aliases,
112+
or associated type projections resolving to the implementing type.
113113

114114
```rust
115115
# use std::rc::Rc;

0 commit comments

Comments
 (0)