注意: 最新版のドキュメントをご覧ください。この第1版ドキュメントは古くなっており、最新情報が反映されていません。リンク先のドキュメントが現在の Rust の最新のドキュメントです。
いくつかの関数ができたので、コメントについて学ぶことはよい考えです。 コメントはコードについての何かを説明する助けになるように、他のプログラマに残すメモです。 コンパイラはそれらをほとんど無視します。
Rustには気にすべき2種類のコメント、 行コメント と ドキュメンテーションコメント があります。
fn main() { // Line comments are anything after ‘//’ and extend to the end of the line. // 行コメントは「//」以降の全ての文字であり、行末まで続く let x = 5; // this is also a line comment. // If you have a long explanation for something, you can put line comments next // to each other. Put a space between the // and your comment so that it’s // more readable. // もし何かのために長い説明を書くのであれば、行コメントを複数行に渡って書くこと // ができる。//とコメントとの間にスペースを置くことで、より読みやすくなる }// 行コメントは「//」以降の全ての文字であり、行末まで続く let x = 5; // this is also a line comment. // もし何かのために長い説明を書くのであれば、行コメントを複数行に渡って書くこと // ができる。//とコメントとの間にスペースを置くことで、より読みやすくなる
その他の種類のコメントはドキュメンテーションコメントです。
ドキュメンテーションコメントは //
の代わりに ///
を使い、その中でMarkdown記法をサポートします。
/// 与えられた数値に1を加える /// /// # Examples /// /// ``` /// let five = 5; /// /// assert_eq!(6, add_one(5)); /// # fn add_one(x: i32) -> i32 { /// # x + 1 /// # } /// ``` fn add_one(x: i32) -> i32 { x + 1 }
もう1つのスタイルのドキュメンテーションコメントに //!
があります。これは、その後に続く要素ではなく、それを含んでいる要素(例えばクレート、モジュール、関数)にコメントを付けます。
一般的にはクレートルート(lib.rs)やモジュールルート(mod.rs)の中で使われます。
//! # Rust標準ライブラリ //! //! Rust標準ライブラリはポータブルなRustソフトウェアをビルドするために不可欠な //! ランタイム関数を提供する。
ドキュメンテーションコメントを書いているとき、いくつかの使い方の例を提供することは非常に非常に有用です。
ここでは新しいマクロ、 assert_eq!
を使っていることに気付くでしょう。
これは2つの値を比較し、もしそれらが互いに等しくなければ panic!
します。
これはドキュメントの中で非常に便利です。
もう1つのマクロ、 assert!
は、それに渡された値が false
であれば panic!
します。
それらのドキュメンテーションコメントからHTMLドキュメントを生成するため、そしてコード例をテストとして実行するためにも rustdoc
ツールを使うことができます!