Однострочный модуль реэкспорта - PullRequest
0 голосов
/ 29 сентября 2019

Я пытаюсь реэкспортировать субмодуль из модуля.Можно ли это сделать в одну строку?

// mod.rs
mod submodule;
pub use submodule::*;

1 Ответ

0 голосов
/ 29 сентября 2019

Конечно, может, если модуль доступен для вас (то есть в вашем текущем ящике или публично в другом).

Вы можете убедиться в этом с помощью этой детской площадки пример:

pub mod tests {
    pub fn foo() {
        ()
    }
    pub fn bar() {
        ()
    }
    fn baz() {
        ()
    }
}

pub use tests::*;

fn main() {
    foo();
    bar();
    // baz();
}

Обратите внимание, что (как и следовало ожидать) закрытая функция baz() не реэкспортируется.Вы можете убедиться в этом, раскомментировав третью строку в образце.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...