jsdoc/require-yields 正しさ
何を行うか
yield がドキュメント化されていることを要求します。複数の @yields タグが存在する場合も報告します。
なぜこれは良くないのか
このルールは、必要となる場合に @yields タグが省略されないようにするためです。
例
このルールに対する不正なコードの例:
javascript
function* quux(foo) {
yield foo;
}
/**
* @yields {undefined}
* @yields {void}
*/
function* quux(foo) {}このルールに対する正しいコードの例:
javascript
/** * @yields Foo */
function* quux(foo) {
yield foo;
}設定
このルールは以下のプロパティを持つ設定オブジェクトを受け入れます。
exemptedBy
type: string[]
default: ["inheritdoc"]
これらのタグが付与された関数は、リントルールから除外されます。
forceRequireYields
type: boolean
default: false
true にすると、値を yield しない場合や本体が空の関数であっても、すべてのジェネレータ関数に @yields タグが必要になります。
withGeneratorTag
type: boolean
default: false
true にすると、@generator タグが存在する場合に @yields タグを要求します。
使用方法
このルールを構成ファイルまたは CLI で有効化するには、次のように使用できます:
json
{
"plugins": ["jsdoc"],
"rules": {
"jsdoc/require-yields": "error"
}
}bash
oxlint --deny jsdoc/require-yields --jsdoc-plugin