2014-12-23 3 views
4

Вот моя структура каталогов:Как сообщить Cargo о создании файлов, отличных от main.rs?

[email protected] ~/src/rustlang/gettingrusty $ tree . 
. 
├── Cargo.lock 
├── Cargo.toml 
├── foo.txt 
├── src 
│   ├── boolean_example.rs 
│   ├── function_goodbye_world.rs 
│   ├── listdir.rs 
│   ├── looping.rs 
│   ├── main.rs 
│   ├── pattern_match.rs 
│   └── write_to_file.rs 
└── target 
    ├── build 
    ├── deps 
    ├── examples 
    ├── gettingrusty 
    └── native 

6 directories, 11 files 

Когда я бегу «грузовое сборки», это, кажется, только строить main.rs. Как мне изменить Cargo.toml для создания остальных файлов?

ответ

6

Компилятор Rust компилирует все файлы одновременно, чтобы построить ящик , который является исполняемым файлом или библиотекой. Для добавления файлов в клеть, добавьте mod элементов в корневую клети (здесь, main.rs) или к другим модулям:

mod boolean_example; 
mod function_goodbye_world; 
mod listdir; 
mod looping; 
mod pattern_match; 
mod write_to_file; 

Для доступа к элементам, определенным в другом модуле из корневой клети, вы должны оговориться, что пункт с именем модуля. Например, если у вас есть функция с именем foo в модуле looping, вы должны сослаться на нее как looping::foo.

Вы также можете добавить операторы use для импорта имен в область действия модуля. Например, если вы добавите use looping::foo;, вы можете просто использовать foo, чтобы обратиться к looping::foo.

Для получения дополнительной информации см. section on Crates and Modules in the Rust Programming Language book.

 Смежные вопросы

  • Нет связанных вопросов^_^