#author("2022-06-23T05:54:30+00:00","default:src128","src128")
#author("2022-06-23T05:54:45+00:00","default:src128","src128")
&tag(YARD);
*目次 [#w516d8a6]
#contents
*関連ページ [#pc54e23a]
*参考情報 [#y4c11f7a]
-[[YARD - A Ruby Documentation Tool:https://yardoc.org/]]
-[[YARD cheatsheet:https://gist.github.com/chetan/1827484]]

*概要 [#j68b3533]
-Rubyのドキュメントツール。
-標準のRubyDoc停滞期に開発された。
-2022/06/20(月)現在RubyDocとYARDどっちが優勢か不明。
-IntelliJ/RubyMineがどっちもに対応しているのでとりあえずYARDに従ってドキュメントかいとくか?

*書式 [#rfa637e4]

**クラス、モジュール [#uabafe6d]
- 1行コメントのみ。@author入れてもいいけど特になくてもいいか。
- モジュール
#pre{{
# Namespace for classes and modules that handle serving documentation over HTTP
#
# @since 0.6.0
}}
- クラス
#pre{{
# Abstract base class for CLI utilities. Provides some helper methods for
# the option parser
# 
# @author Full Name
}}

**メソッド [#m0edea50]
- 1行コメント@paramと@returnがあったらよさげ
#pre{{
# An alias to {Parser::SourceParser}'s parsing method
#
# @option opts [String] :subject The subject
# return the object
}}
*** @example [#pa4acfb3]
-@exampleの使用例を使う場合
#pre{{
# Generates Array containing numbers exceeding limit_age. Numbers is
# members of ages.
#
# @example extract ages over 40
#   overages = extract_overage([17, 43, 40, 56], 40)
#   puts("overages: #{overages.join(", ")}") #=> "overages: 43, 56"
#
#
# @param ages [Array] numbers checked if they exceeded from limit_age.
# @param limit_age [Integer] limit_age limit used to extract
#   bigger ages than it.
# @return [Array] Returns Array containing numbers exceeding limit_age.
def extract_overage(ages, limit_age=20)
}}
*** @return [#vd366d4b]
-参考。 [[YARD - A Ruby Documentation Tool:https://yardoc.org/types]]
-複数の値を返す。真偽値と数値という固定長配列を返したい場合
#pre{{
# @return [Array(Boolean, Number)] fixed-size array(vector) of a boolean followed by a number
def foo
  [true_or_false, some_integer]
end
 }}
}}
-複数のタイプからなる可変長配列を返したい場合
 # @return [Array<String, Symbol, #read>] an Array of (Strings, Symbols, objects that respond to #read)



*IntelliJ/RubyMineのサポート [#k6e05ac1]
-[[コードのドキュメント化 | RubyMine:https://pleiades.io/help/ruby/documenting-source-code.html]]
-メソッドをハイライトしてOption+Enterで@paramタグを追加できる。
-Control+Option+Qでレンダリングの切替
-独自の@typeあのエーションを使うこともできる。
#pre{{
# @type [Integer]
customer_id = 1
# @type [String] customer_name
customer_name = "Andrew Fuller"
}}

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS