I have the following project structure:
src
├── main.rs
├── lib.rs
└── display
└── mod.rs
└── tetromino
├── mod.rs
├── tetromino.rs
├── characters.rs
└── line.rs
And in lib.rs
I have this function:
pub fn move_to_built(
tetromino: &mut Tetromino,
built_tetrominoes: &mut [[TetrominoCharacter; WIDTH]; HEIGHT],
) {
if tetromino.stationary {
for character in &tetromino.first_line.characters {
let x = character.x;
let y = character.y;
built_tetrominoes[y as usize][x as usize] = *character;
}
for character in &tetromino.second_line.characters {
let x = character.x;
let y = character.y;
built_tetrominoes[y as usize][x as usize] = *character;
}
for character in &tetromino.third_line.characters {
let x = character.x;
let y = character.y;
built_tetrominoes[y as usize][x as usize] = *character;
}
for character in &tetromino.fourth_line.characters {
let x = character.x;
let y = character.y;
built_tetrominoes[y as usize][x as usize] = *character;
}
}
}
And in dispay/mod.rs
I’m calling it in this function
use crate::move_to_built;
use crate::Tetromino;
use crate::TetrominoCharacter;
pub fn display_screen(...) {
move_to_built(current_tetromino, built_tetroinoes);
...
}
Yet I’m getting the following error:
unresolved import `crate::move_to_built`
no `move_to_built` in the root
I’ve already searched and tried to fix it, yet I can’t seem to find a way to fix it.
Thanks!
I wanted the function to be appropriately called given that it is public and I’m using use crate::move_to_built
to import it. However this didn’t worked and I get an unresolved_import
error