Size: a a a

RU Rust GameDev — русскоговорящее сообщество

2020 January 29

o

operator in RU Rust GameDev — русскоговорящее сообщество
snuk182: Потому что он ищет либо rain.rs в текущем каталоге, либо mod rain {} прописанный в том же файле
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
operator
snuk182: Потому что он ищет либо rain.rs в текущем каталоге, либо mod rain {} прописанный в том же файле
Если в файле прописан, то как раз не надо второй раз писать уже mod <name>;
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
Блин я запутался... есть у меня все купом в main.rs, я хочу вынести какой-то кусочек в rain.rs и в blob.rs. В каждом из них я объявляют mod rain и mod blob соответственно и и подключаю в мейне через use crate::rain use crate::blob ?
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
В самих файлах не надо писать

в main.rs надо написать
mod rain; 
mod blob;
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
дальше use::rain::whatever
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
так что это получается, я в мейне объявляю модуль а сам он в отдельном файле где-то
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
черт... я думал надо в самом файле модуля объявлять модуль
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
Да, вообще в растбуке все тонкости описаны. Рекомендую по всем вопросам туда сначала смотреть.
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
теперь выходит если у меня будет двадцать файлов подключаемых я должен буду в мейне иметь сначала двадцать mod <name> а затем там же сразу двадцать use crate::<modname>::<whatever>?
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
Vlad Zhukov
Да, вообще в растбуке все тонкости описаны. Рекомендую по всем вопросам туда сначала смотреть.
я только что прочитал раздел по модулям и вот не понял
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
ну все равно не пойму, вот есть файлы в папке, если в мейне объявнить модули с таким же  названием как название этих файлов то к их содержимому (если оно объявлено как `pub`) моожно будет обращатся. а если в мейне этого не сделать то эти файлы просто тупо становятся не доступными никому никак чтоли? почему бы не сделать по дефолту что типа все файлы  в директории это модули а уж там приватные или нет другое дело?
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
SET001
теперь выходит если у меня будет двадцать файлов подключаемых я должен буду в мейне иметь сначала двадцать mod <name> а затем там же сразу двадцать use crate::<modname>::<whatever>?
по группам разобъешь дирректории сделаешь, в ней напишешь mod.rs в котором будешь экспортить рядом лежащие файлы (модули).
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
Vlad Zhukov
по группам разобъешь дирректории сделаешь, в ней напишешь mod.rs в котором будешь экспортить рядом лежащие файлы (модули).
а, точно..
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
Vlad Zhukov
Ну вот полагать такое(включить все файлы из дирректории) для сырого rustc уже не так очевидно. Не стоит забывать, что карго это тулза.
Про "по дефолту " вот было
источник

S

SET001 in RU Rust GameDev — русскоговорящее сообщество
operator
snuk182: Внутри корня может быть много чего, с разным уровнем доступа. Сам корень тоже переопределяется.
что значит корень переопределяется?
источник

o

operator in RU Rust GameDev — русскоговорящее сообщество
источник

o

operator in RU Rust GameDev — русскоговорящее сообщество
snuk182: package->lib->path / package->bin->path
источник

o

operator in RU Rust GameDev — русскоговорящее сообщество
snuk182: необязательно сорцы помещать в `src`
источник

VZ

Vlad Zhukov in RU Rust GameDev — русскоговорящее сообщество
Vlad Zhukov
В самих файлах не надо писать

в main.rs надо написать
mod rain; 
mod blob;
Если прямо надо файлы инклюдить без модулей и всего — есть еще такая штука https://doc.rust-lang.org/1.1.0/std/macro.include!.html  (но я тебе не показывал)
источник

L

Lain-dono in RU Rust GameDev — русскоговорящее сообщество
Ещё можно
источник