rustdoc で関連関数をグループ分けする方法について。

背景情報

複数の関連関数を書く場合、一つの impl ブロックにまとめず、複数の impl ブロックに分けて書けば、関連関数をグループ分けできる。これにより、関連関数が沢山あっても目的のものを探しやすくなる。

そして、impl ブロックにはドキュメントコメントも付加できる。

そのため、このグループ分けを rustdoc にも反映できる。

サンプル


/// My original type.
/// 
/// This type has two group methods.
/// 
/// * [Group A](#group-a-methods)
/// * [Group B](#group-b-methods)
pub struct MyType();

/// # Group A methods.
impl MyType {
    /// Method A1
    pub fn method_a1(&self) {}
    /// Method A2
    pub fn method_a2(&self) {}
}

/// # Group B methods.
impl MyType {
    /// Method B1
    pub fn method_b1(&self) {}
    /// Method B2
    pub fn method_b2(&self) {}
}