2
The structure of my project is like this:
src/main.rs
--- game.rs
--- game_state.rs
Within game.rs has:
mod game_state;
And within game_state.rs has
mod game;
But this returns me an error:
file not found for module game_state
2
The structure of my project is like this:
src/main.rs
--- game.rs
--- game_state.rs
Within game.rs has:
mod game_state;
And within game_state.rs has
mod game;
But this returns me an error:
file not found for module game_state
5
If you wish to game.rs and game_state.rs stay in the same root directory of main.rs, you must declare the modules in the file itself main.rs.
// src/main.rs
mod game;
mod game_state;
Modules can only reference sub-modules if they are directories, so if you declare the sub-module mod game_state; in the archive game.rs, you need to create the directory game/, move the file game.rs for game/mod.rs and create a new file/module game/game_state.rs.
src/game/
└──── mod.rs
└──── game_state.rs
src/main.rs
Despite being quite flexible, the module structure of the Rust language is a bit confusing and intimidating but there is already discussions who try to improve this situation.
1
All file import goes to the main file, ie the relative of all:
main rs.
mod game;
mod game_state;
To refer to game inside game_state, can use:
game_state.rs
use super::game;
That is, the same of accessing the parent module (main.rs in fact is a module).
If you want sub-modules similar to main.rs, which can import other files, create a folder, like:
/src/
└── ./game_state/
└── ./mod.rs
0
But this returns an error: file not found for module game_state
This structure expects a file in: game_state/game.rs
Browser other questions tagged rust
You are not signed in. Login or sign up in order to post.