コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

RubyのYARDにはRDocのような:nodoc:は存在しない

そもそもRDocの:nodoc:とは

Rubyに標準的に備わっているドキュメント生成のライブラリRDocには:nodoc:というオプションがある。これはどういうものかはドキュメントに記載がある。

指定した要素をドキュメントに含めません。 - library rdoc (Ruby 3.1 リファレンスマニュアル)

上記の通り「ドキュメントが存在しない」ということを示すものである。

YARDには対するものがない

YARDにはドキュメントの省略というものが存在しない、またデフォルトではYARDはpublicメソッドのみをドキュメント化する。

YARDにはなぜ:nodoc:が存在しないのか

互換性のある機能がありそうなものの、存在しないことに関してはYARDのReadmeに記載がある

YARD will by default only document code in your public visibility. You can document your protected and private code by adding --protected or --private to the option switches. In addition, you can add --no-private to also ignore any object that has the @private meta-tag. This is similar to RDoc's ":nodoc:" behaviour, though the distinction is important. RDoc implies that the object with :nodoc: would not be documented, whereas YARD still recommends documenting private objects for the private API (for maintainer/developer consumption). - GitHub - lsegal/yard: YARD is a Ruby Documentation tool. The Y stands for "Yay!"

上記の中にあるように

RDocは:nodoc:を持つオブジェクトはドキュメント化されないことを意味しますが、YARDはプライベートAPIのためのプライベートオブジェクトをドキュメント化することを推奨しています

という旨の一文があるので、原則としてドキュメントを書いてほしい意図から記述自体を用意していないということだと思われる。

参考サイト