doc: adding example for implementations without traits
This commit is contained in:
parent
9830051607
commit
93ba558588
1 changed files with 14 additions and 1 deletions
|
|
@ -1684,7 +1684,20 @@ 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 module or a sub-module as the `self` type.
|
||||
in the same module or a sub-module as the `self` type:
|
||||
|
||||
```
|
||||
struct Point {x: int, y: int}
|
||||
|
||||
impl Point {
|
||||
fn log(&self) {
|
||||
println!("Point is at ({}, {})", self.x, self.y);
|
||||
}
|
||||
}
|
||||
|
||||
let my_point = Point {x: 10, y:11};
|
||||
my_point.log();
|
||||
```
|
||||
|
||||
When a trait _is_ specified in an `impl`, all methods declared as part of the
|
||||
trait must be implemented, with matching types and type parameter counts.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue