summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/src/docs/module_inception.txt
blob: d80a1b8d8fe577e711bc488c8907d731845964e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
### What it does
Checks for modules that have the same name as their
parent module

### Why is this bad?
A typical beginner mistake is to have `mod foo;` and
again `mod foo { ..
}` in `foo.rs`.
The expectation is that items inside the inner `mod foo { .. }` are then
available
through `foo::x`, but they are only available through
`foo::foo::x`.
If this is done on purpose, it would be better to choose a more
representative module name.

### Example
```
// lib.rs
mod foo;
// foo.rs
mod foo {
    ...
}
```