479: book: detail import resolving for 0.6 migration r=korken89 a=tmplt

That is, answering the question of why imports are no longer resolving during compilation.

Co-authored-by: Viktor Sonesten <v@tmplt.dev>
This commit is contained in:
bors[bot] 2021-04-22 13:05:43 +00:00 committed by GitHub
commit e6a22aa48e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -30,7 +30,46 @@ mod app {
Now that a regular Rust module is used it means it is possible to have custom Now that a regular Rust module is used it means it is possible to have custom
user code within that module. user code within that module.
Additionally, it means that `use`-statements for resources etc may be required. Additionally, it means that `use`-statements for resources used in user
code must be moved inside `mod app`, or be referred to with `super`. For
example, change:
```rust
use some_crate::some_func;
#[rtic::app(/* .. */)]
const APP: () = {
fn func() {
some_crate::some_func();
}
};
```
into
```rust
#[rtic::app(/* .. */)]
mod app {
use some_crate::some_func;
fn func() {
some_crate::some_func();
}
}
```
or
```rust
use some_crate::some_func;
#[rtic::app(/* .. */)]
mod app {
fn func() {
super::some_crate::some_func();
}
};
```
## Move Dispatchers from `extern "C"` to app arguments. ## Move Dispatchers from `extern "C"` to app arguments.