reference: clarify impl

Another kind of nominal types in Rust are trait objects, so the following is valid

```rust
trait A {

}

impl A {

}
```
This commit is contained in:
Aleksey Kladov 2015-10-26 12:31:17 +03:00
parent 72ed590f8b
commit 32e4ba8f50

View File

@ -1520,11 +1520,11 @@ impl Shape for Circle {
```
It is possible to define an implementation without referring to a trait. The
methods in such an implementation can only be used as direct calls on the
values of the type that the implementation targets. In such an implementation,
the trait type and `for` after `impl` are omitted. Such implementations are
limited to nominal types (enums, structs), and the implementation must appear
in the same crate as the `self` type:
methods in such an implementation can only be used as direct calls on the values
of the type that the implementation targets. In such an implementation, the
trait type and `for` after `impl` are omitted. Such implementations are limited
to nominal types (enums, structs, trait objects), and the implementation must
appear in the same crate as the `self` type:
```
struct Point {x: i32, y: i32}