AHMED_RAPIRA, можно же Box из https://doc.rust-lang.org/stable/alloc или что подобное взять. Если надо обойтись вообще без боксов/аналогов и заранее известны все возможные варианты этого `C`, то может стоит на enum переделать.
iihaarr, каждый файл это модуль (если не опускаться до грязных include!-хаков), но можно в module/mod.rs ре-экспортировать структуру, дописав чет вроде `pub use a::a;`.
если нужна структура файлов именно как в изначальном посте, то так и писать, да - в библиотечном крейте (корнем которого является lib.rs файл) есть модуль "module", в нем модуль "a", а уже в нем структура "a".
cryogenic_phoenix, почти все чисто про код, да. у rg3d есть свой редактор, но так не так уж и много что можно делать. в годорасте доступен весь редактор годо - главная сложность в местами неудобных или ансейфовых стыках между движком и раст кодом.
cryogenic_phoenix, раст геймдев все еще довольно сырой и хорошо подходит только энтузиастам, боюсь. если надо делать маленькую 2д игру, то я бы щупал macroquad, ggez, tetra и т.п., если игру побольше и трехмерную, то bevy, rg3d или godot-rust (раст привязки к годо).
Если разговор про вес конечного бинаря, то на всякий случай докину еще, что можно собирать с динамической линковкой стандартной библиотеки - `-C prefer-dynamic` - но применимость этого приема ограничена отсутсвием стабильного ABI у Rust.
> Вы _нигде и никогда_ не найдете руководства по переходу с языка А на язык Б.
Справедливости ради, шесть лет назад растбук начинался как книга именно для рубистов - https://github.com/steveklabnik/rust_for_rubyists - это потом мозилла наняла клабника и попросила переделать книгу под более широкую аудиторию.