如何使内部函数非公开?

时间:2015-02-10 22:34:59

标签: rust

我想创建一个具有免费排序功能InsertSortSelectionSort的模块。根据Sedgwick的实现,我想使用内部exchless辅助函数。我不想暴露它们,以免任何人意外地使用它们。如何实现这一目标?

2 个答案:

答案 0 :(得分:3)

只需撰写fn而不是pub fn

答案 1 :(得分:1)

正如Chris所说,默认情况下,项目是私有的:

mod foo {
    fn helper() -> u8 { 1 }
    pub fn algorithm() -> u8 {
        helper() + helper()
    }
}

fn main() {
    println!("{}", foo::algorithm());

    // error: function `helper` is private
    // println!("{}", foo::helper()); 
}