eslint-plugin-jsdoc 46.4.6 → 46.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -0
- package/dist/index.js +21 -10
- package/dist/index.js.map +1 -1
- package/package.json +14 -12
- package/dist/WarnSettings.d.ts +0 -17
- package/dist/WarnSettings.d.ts.map +0 -1
- package/dist/alignTransform.d.ts +0 -32
- package/dist/alignTransform.d.ts.map +0 -1
- package/dist/defaultTagOrder.d.ts +0 -5
- package/dist/defaultTagOrder.d.ts.map +0 -1
- package/dist/exportParser.d.ts +0 -41
- package/dist/exportParser.d.ts.map +0 -1
- package/dist/getDefaultTagStructureForMode.d.ts +0 -11
- package/dist/getDefaultTagStructureForMode.d.ts.map +0 -1
- package/dist/index.d.ts +0 -10
- package/dist/index.d.ts.map +0 -1
- package/dist/iterateJsdoc.d.ts +0 -460
- package/dist/iterateJsdoc.d.ts.map +0 -1
- package/dist/jsdocUtils.d.ts +0 -421
- package/dist/jsdocUtils.d.ts.map +0 -1
- package/dist/rules/checkAccess.d.ts +0 -3
- package/dist/rules/checkAccess.d.ts.map +0 -1
- package/dist/rules/checkAlignment.d.ts +0 -3
- package/dist/rules/checkAlignment.d.ts.map +0 -1
- package/dist/rules/checkExamples.d.ts +0 -4
- package/dist/rules/checkExamples.d.ts.map +0 -1
- package/dist/rules/checkIndentation.d.ts +0 -3
- package/dist/rules/checkIndentation.d.ts.map +0 -1
- package/dist/rules/checkLineAlignment.d.ts +0 -10
- package/dist/rules/checkLineAlignment.d.ts.map +0 -1
- package/dist/rules/checkParamNames.d.ts +0 -3
- package/dist/rules/checkParamNames.d.ts.map +0 -1
- package/dist/rules/checkPropertyNames.d.ts +0 -3
- package/dist/rules/checkPropertyNames.d.ts.map +0 -1
- package/dist/rules/checkSyntax.d.ts +0 -3
- package/dist/rules/checkSyntax.d.ts.map +0 -1
- package/dist/rules/checkTagNames.d.ts +0 -3
- package/dist/rules/checkTagNames.d.ts.map +0 -1
- package/dist/rules/checkTypes.d.ts +0 -3
- package/dist/rules/checkTypes.d.ts.map +0 -1
- package/dist/rules/checkValues.d.ts +0 -3
- package/dist/rules/checkValues.d.ts.map +0 -1
- package/dist/rules/emptyTags.d.ts +0 -3
- package/dist/rules/emptyTags.d.ts.map +0 -1
- package/dist/rules/implementsOnClasses.d.ts +0 -3
- package/dist/rules/implementsOnClasses.d.ts.map +0 -1
- package/dist/rules/importsAsDependencies.d.ts +0 -3
- package/dist/rules/importsAsDependencies.d.ts.map +0 -1
- package/dist/rules/informativeDocs.d.ts +0 -3
- package/dist/rules/informativeDocs.d.ts.map +0 -1
- package/dist/rules/matchDescription.d.ts +0 -3
- package/dist/rules/matchDescription.d.ts.map +0 -1
- package/dist/rules/matchName.d.ts +0 -3
- package/dist/rules/matchName.d.ts.map +0 -1
- package/dist/rules/multilineBlocks.d.ts +0 -3
- package/dist/rules/multilineBlocks.d.ts.map +0 -1
- package/dist/rules/noBadBlocks.d.ts +0 -3
- package/dist/rules/noBadBlocks.d.ts.map +0 -1
- package/dist/rules/noBlankBlockDescriptions.d.ts +0 -3
- package/dist/rules/noBlankBlockDescriptions.d.ts.map +0 -1
- package/dist/rules/noBlankBlocks.d.ts +0 -3
- package/dist/rules/noBlankBlocks.d.ts.map +0 -1
- package/dist/rules/noDefaults.d.ts +0 -3
- package/dist/rules/noDefaults.d.ts.map +0 -1
- package/dist/rules/noMissingSyntax.d.ts +0 -10
- package/dist/rules/noMissingSyntax.d.ts.map +0 -1
- package/dist/rules/noMultiAsterisks.d.ts +0 -3
- package/dist/rules/noMultiAsterisks.d.ts.map +0 -1
- package/dist/rules/noRestrictedSyntax.d.ts +0 -3
- package/dist/rules/noRestrictedSyntax.d.ts.map +0 -1
- package/dist/rules/noTypes.d.ts +0 -3
- package/dist/rules/noTypes.d.ts.map +0 -1
- package/dist/rules/noUndefinedTypes.d.ts +0 -3
- package/dist/rules/noUndefinedTypes.d.ts.map +0 -1
- package/dist/rules/requireAsteriskPrefix.d.ts +0 -3
- package/dist/rules/requireAsteriskPrefix.d.ts.map +0 -1
- package/dist/rules/requireDescription.d.ts +0 -3
- package/dist/rules/requireDescription.d.ts.map +0 -1
- package/dist/rules/requireDescriptionCompleteSentence.d.ts +0 -3
- package/dist/rules/requireDescriptionCompleteSentence.d.ts.map +0 -1
- package/dist/rules/requireExample.d.ts +0 -3
- package/dist/rules/requireExample.d.ts.map +0 -1
- package/dist/rules/requireFileOverview.d.ts +0 -3
- package/dist/rules/requireFileOverview.d.ts.map +0 -1
- package/dist/rules/requireHyphenBeforeParamDescription.d.ts +0 -3
- package/dist/rules/requireHyphenBeforeParamDescription.d.ts.map +0 -1
- package/dist/rules/requireJsdoc.d.ts +0 -9
- package/dist/rules/requireJsdoc.d.ts.map +0 -1
- package/dist/rules/requireParam.d.ts +0 -4
- package/dist/rules/requireParam.d.ts.map +0 -1
- package/dist/rules/requireParamDescription.d.ts +0 -3
- package/dist/rules/requireParamDescription.d.ts.map +0 -1
- package/dist/rules/requireParamName.d.ts +0 -3
- package/dist/rules/requireParamName.d.ts.map +0 -1
- package/dist/rules/requireParamType.d.ts +0 -3
- package/dist/rules/requireParamType.d.ts.map +0 -1
- package/dist/rules/requireProperty.d.ts +0 -3
- package/dist/rules/requireProperty.d.ts.map +0 -1
- package/dist/rules/requirePropertyDescription.d.ts +0 -3
- package/dist/rules/requirePropertyDescription.d.ts.map +0 -1
- package/dist/rules/requirePropertyName.d.ts +0 -3
- package/dist/rules/requirePropertyName.d.ts.map +0 -1
- package/dist/rules/requirePropertyType.d.ts +0 -3
- package/dist/rules/requirePropertyType.d.ts.map +0 -1
- package/dist/rules/requireReturns.d.ts +0 -3
- package/dist/rules/requireReturns.d.ts.map +0 -1
- package/dist/rules/requireReturnsCheck.d.ts +0 -3
- package/dist/rules/requireReturnsCheck.d.ts.map +0 -1
- package/dist/rules/requireReturnsDescription.d.ts +0 -3
- package/dist/rules/requireReturnsDescription.d.ts.map +0 -1
- package/dist/rules/requireReturnsType.d.ts +0 -3
- package/dist/rules/requireReturnsType.d.ts.map +0 -1
- package/dist/rules/requireThrows.d.ts +0 -3
- package/dist/rules/requireThrows.d.ts.map +0 -1
- package/dist/rules/requireYields.d.ts +0 -3
- package/dist/rules/requireYields.d.ts.map +0 -1
- package/dist/rules/requireYieldsCheck.d.ts +0 -3
- package/dist/rules/requireYieldsCheck.d.ts.map +0 -1
- package/dist/rules/sortTags.d.ts +0 -3
- package/dist/rules/sortTags.d.ts.map +0 -1
- package/dist/rules/tagLines.d.ts +0 -3
- package/dist/rules/tagLines.d.ts.map +0 -1
- package/dist/rules/textEscaping.d.ts +0 -3
- package/dist/rules/textEscaping.d.ts.map +0 -1
- package/dist/rules/validTypes.d.ts +0 -3
- package/dist/rules/validTypes.d.ts.map +0 -1
- package/dist/tagNames.d.ts +0 -16
- package/dist/tagNames.d.ts.map +0 -1
- package/dist/utils/hasReturnValue.d.ts +0 -20
- package/dist/utils/hasReturnValue.d.ts.map +0 -1
- package/docs/advanced.md +0 -102
- package/docs/rules/check-access.md +0 -193
- package/docs/rules/check-alignment.md +0 -169
- package/docs/rules/check-examples.md +0 -784
- package/docs/rules/check-indentation.md +0 -296
- package/docs/rules/check-line-alignment.md +0 -1002
- package/docs/rules/check-param-names.md +0 -1035
- package/docs/rules/check-property-names.md +0 -244
- package/docs/rules/check-syntax.md +0 -80
- package/docs/rules/check-tag-names.md +0 -1132
- package/docs/rules/check-types.md +0 -1198
- package/docs/rules/check-values.md +0 -409
- package/docs/rules/empty-tags.md +0 -220
- package/docs/rules/implements-on-classes.md +0 -219
- package/docs/rules/imports-as-dependencies.md +0 -99
- package/docs/rules/informative-docs.md +0 -400
- package/docs/rules/match-description.md +0 -1008
- package/docs/rules/match-name.md +0 -249
- package/docs/rules/multiline-blocks.md +0 -398
- package/docs/rules/no-bad-blocks.md +0 -174
- package/docs/rules/no-blank-block-descriptions.md +0 -91
- package/docs/rules/no-blank-blocks.md +0 -98
- package/docs/rules/no-defaults.md +0 -207
- package/docs/rules/no-missing-syntax.md +0 -275
- package/docs/rules/no-multi-asterisks.md +0 -278
- package/docs/rules/no-restricted-syntax.md +0 -383
- package/docs/rules/no-types.md +0 -168
- package/docs/rules/no-undefined-types.md +0 -789
- package/docs/rules/require-asterisk-prefix.md +0 -297
- package/docs/rules/require-description-complete-sentence.md +0 -820
- package/docs/rules/require-description.md +0 -585
- package/docs/rules/require-example.md +0 -390
- package/docs/rules/require-file-overview.md +0 -324
- package/docs/rules/require-hyphen-before-param-description.md +0 -281
- package/docs/rules/require-jsdoc.md +0 -1857
- package/docs/rules/require-param-description.md +0 -238
- package/docs/rules/require-param-name.md +0 -163
- package/docs/rules/require-param-type.md +0 -227
- package/docs/rules/require-param.md +0 -1820
- package/docs/rules/require-property-description.md +0 -88
- package/docs/rules/require-property-name.md +0 -79
- package/docs/rules/require-property-type.md +0 -79
- package/docs/rules/require-property.md +0 -128
- package/docs/rules/require-returns-check.md +0 -1053
- package/docs/rules/require-returns-description.md +0 -181
- package/docs/rules/require-returns-type.md +0 -144
- package/docs/rules/require-returns.md +0 -1191
- package/docs/rules/require-throws.md +0 -326
- package/docs/rules/require-yields-check.md +0 -544
- package/docs/rules/require-yields.md +0 -823
- package/docs/rules/sort-tags.md +0 -635
- package/docs/rules/tag-lines.md +0 -551
- package/docs/rules/text-escaping.md +0 -177
- package/docs/rules/valid-types.md +0 -881
- package/docs/settings.md +0 -362
- package/tsconfig-prod.json +0 -20
- package/tsconfig.json +0 -21
|
@@ -1,1191 +0,0 @@
|
|
|
1
|
-
<a name="user-content-require-returns"></a>
|
|
2
|
-
<a name="require-returns"></a>
|
|
3
|
-
# <code>require-returns</code>
|
|
4
|
-
|
|
5
|
-
* [Options](#user-content-require-returns-options)
|
|
6
|
-
* [Context and settings](#user-content-require-returns-context-and-settings)
|
|
7
|
-
* [Failing examples](#user-content-require-returns-failing-examples)
|
|
8
|
-
* [Passing examples](#user-content-require-returns-passing-examples)
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Requires that return statements are documented.
|
|
12
|
-
|
|
13
|
-
Will also report if multiple `@returns` tags are present.
|
|
14
|
-
|
|
15
|
-
<a name="user-content-require-returns-options"></a>
|
|
16
|
-
<a name="require-returns-options"></a>
|
|
17
|
-
## Options
|
|
18
|
-
|
|
19
|
-
- `checkConstructors` - A value indicating whether `constructor`s should
|
|
20
|
-
be checked for `@returns` tags. Defaults to `false`.
|
|
21
|
-
- `checkGetters` - Boolean to determine whether getter methods should
|
|
22
|
-
be checked for `@returns` tags. Defaults to `true`.
|
|
23
|
-
- `exemptedBy` - Array of tags (e.g., `['type']`) whose presence on the
|
|
24
|
-
document block avoids the need for a `@returns`. Defaults to an array
|
|
25
|
-
with `inheritdoc`. If you set this array, it will overwrite the default,
|
|
26
|
-
so be sure to add back `inheritdoc` if you wish its presence to cause
|
|
27
|
-
exemption of the rule.
|
|
28
|
-
- `forceRequireReturn` - Set to `true` to always insist on
|
|
29
|
-
`@returns` documentation regardless of implicit or explicit `return`'s
|
|
30
|
-
in the function. May be desired to flag that a project is aware of an
|
|
31
|
-
`undefined`/`void` return. Defaults to `false`.
|
|
32
|
-
- `forceReturnsWithAsync` - By default `async` functions that do not explicitly
|
|
33
|
-
return a value pass this rule as an `async` function will always return a
|
|
34
|
-
`Promise`, even if the `Promise` resolves to void. You can force all
|
|
35
|
-
`async` functions (including ones with an explicit `Promise` but no
|
|
36
|
-
detected non-`undefined` `resolve` value) to require `@return`
|
|
37
|
-
documentation by setting `forceReturnsWithAsync` to `true` on the options
|
|
38
|
-
object. This may be useful for flagging that there has been consideration
|
|
39
|
-
of return type. Defaults to `false`.
|
|
40
|
-
- `contexts` - Set this to an array of strings representing the AST context
|
|
41
|
-
(or an object with `context` and `comment` properties) where you wish
|
|
42
|
-
the rule to be applied.
|
|
43
|
-
Overrides the default contexts (see below). Set to `"any"` if you want
|
|
44
|
-
the rule to apply to any jsdoc block throughout your files (as is necessary
|
|
45
|
-
for finding function blocks not attached to a function declaration or
|
|
46
|
-
expression, i.e., `@callback` or `@function` (or its aliases `@func` or
|
|
47
|
-
`@method`) (including those associated with an `@interface`). This
|
|
48
|
-
rule will only apply on non-default contexts when there is such a tag
|
|
49
|
-
present and the `forceRequireReturn` option is set or if the
|
|
50
|
-
`forceReturnsWithAsync` option is set with a present `@async` tag
|
|
51
|
-
(since we are not checking against the actual `return` values in these
|
|
52
|
-
cases).
|
|
53
|
-
|
|
54
|
-
<a name="user-content-require-returns-context-and-settings"></a>
|
|
55
|
-
<a name="require-returns-context-and-settings"></a>
|
|
56
|
-
## Context and settings
|
|
57
|
-
|
|
58
|
-
| | |
|
|
59
|
-
| -------- | ------- |
|
|
60
|
-
| Context | `ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled |
|
|
61
|
-
| Tags | `returns` |
|
|
62
|
-
| Aliases | `return` |
|
|
63
|
-
|Recommended|true|
|
|
64
|
-
| Options |`checkConstructors`, `checkGetters`, `contexts`, `exemptedBy`, `forceRequireReturn`, `forceReturnsWithAsync`|
|
|
65
|
-
| Settings | `ignoreReplacesDocs`, `overrideReplacesDocs`, `augmentsExtendsReplacesDocs`, `implementsReplacesDocs` |
|
|
66
|
-
|
|
67
|
-
<a name="user-content-require-returns-failing-examples"></a>
|
|
68
|
-
<a name="require-returns-failing-examples"></a>
|
|
69
|
-
## Failing examples
|
|
70
|
-
|
|
71
|
-
The following patterns are considered problems:
|
|
72
|
-
|
|
73
|
-
````js
|
|
74
|
-
/**
|
|
75
|
-
*
|
|
76
|
-
*/
|
|
77
|
-
function quux (foo) {
|
|
78
|
-
|
|
79
|
-
return foo;
|
|
80
|
-
}
|
|
81
|
-
// Message: Missing JSDoc @returns declaration.
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
*
|
|
85
|
-
*/
|
|
86
|
-
const foo = () => ({
|
|
87
|
-
bar: 'baz'
|
|
88
|
-
})
|
|
89
|
-
// Message: Missing JSDoc @returns declaration.
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
*
|
|
93
|
-
*/
|
|
94
|
-
const foo = bar=>({ bar })
|
|
95
|
-
// Message: Missing JSDoc @returns declaration.
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
*
|
|
99
|
-
*/
|
|
100
|
-
const foo = bar => bar.baz()
|
|
101
|
-
// Message: Missing JSDoc @returns declaration.
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
*
|
|
105
|
-
*/
|
|
106
|
-
function quux (foo) {
|
|
107
|
-
|
|
108
|
-
return foo;
|
|
109
|
-
}
|
|
110
|
-
// Settings: {"jsdoc":{"tagNamePreference":{"returns":"return"}}}
|
|
111
|
-
// Message: Missing JSDoc @return declaration.
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
*
|
|
115
|
-
*/
|
|
116
|
-
async function quux() {
|
|
117
|
-
}
|
|
118
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
119
|
-
// Message: Missing JSDoc @returns declaration.
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
*
|
|
123
|
-
*/
|
|
124
|
-
const quux = async function () {}
|
|
125
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
126
|
-
// Message: Missing JSDoc @returns declaration.
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
*
|
|
130
|
-
*/
|
|
131
|
-
const quux = async () => {}
|
|
132
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
133
|
-
// Message: Missing JSDoc @returns declaration.
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
*
|
|
137
|
-
*/
|
|
138
|
-
async function quux () {}
|
|
139
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
140
|
-
// Message: Missing JSDoc @returns declaration.
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
*
|
|
144
|
-
*/
|
|
145
|
-
function quux () {
|
|
146
|
-
}
|
|
147
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
148
|
-
// Message: Missing JSDoc @returns declaration.
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
*
|
|
152
|
-
*/
|
|
153
|
-
function quux () {
|
|
154
|
-
}
|
|
155
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceRequireReturn":true}]
|
|
156
|
-
// Message: Missing JSDoc @returns declaration.
|
|
157
|
-
|
|
158
|
-
/**
|
|
159
|
-
* @function
|
|
160
|
-
*/
|
|
161
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceRequireReturn":true}]
|
|
162
|
-
// Message: Missing JSDoc @returns declaration.
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* @callback
|
|
166
|
-
*/
|
|
167
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceRequireReturn":true}]
|
|
168
|
-
// Message: Missing JSDoc @returns declaration.
|
|
169
|
-
|
|
170
|
-
const language = {
|
|
171
|
-
/**
|
|
172
|
-
* @param {string} name
|
|
173
|
-
*/
|
|
174
|
-
get name() {
|
|
175
|
-
return this._name;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
// Message: Missing JSDoc @returns declaration.
|
|
179
|
-
|
|
180
|
-
/**
|
|
181
|
-
*
|
|
182
|
-
*/
|
|
183
|
-
async function quux () {
|
|
184
|
-
}
|
|
185
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
186
|
-
// Message: Missing JSDoc @returns declaration.
|
|
187
|
-
|
|
188
|
-
/**
|
|
189
|
-
* @function
|
|
190
|
-
* @async
|
|
191
|
-
*/
|
|
192
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceReturnsWithAsync":true}]
|
|
193
|
-
// Message: Missing JSDoc @returns declaration.
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* @callback
|
|
197
|
-
* @async
|
|
198
|
-
*/
|
|
199
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceReturnsWithAsync":true}]
|
|
200
|
-
// Message: Missing JSDoc @returns declaration.
|
|
201
|
-
|
|
202
|
-
/**
|
|
203
|
-
* @returns {undefined}
|
|
204
|
-
* @returns {void}
|
|
205
|
-
*/
|
|
206
|
-
function quux (foo) {
|
|
207
|
-
|
|
208
|
-
return foo;
|
|
209
|
-
}
|
|
210
|
-
// Message: Found more than one @returns declaration.
|
|
211
|
-
|
|
212
|
-
/**
|
|
213
|
-
* @returns
|
|
214
|
-
*/
|
|
215
|
-
function quux () {
|
|
216
|
-
|
|
217
|
-
}
|
|
218
|
-
// Settings: {"jsdoc":{"tagNamePreference":{"returns":false}}}
|
|
219
|
-
// Message: Unexpected tag `@returns`
|
|
220
|
-
|
|
221
|
-
/**
|
|
222
|
-
* @param foo
|
|
223
|
-
*/
|
|
224
|
-
function quux (foo) {
|
|
225
|
-
return 'bar';
|
|
226
|
-
}
|
|
227
|
-
// "jsdoc/require-returns": ["error"|"warn", {"exemptedBy":["notPresent"]}]
|
|
228
|
-
// Message: Missing JSDoc @returns declaration.
|
|
229
|
-
|
|
230
|
-
/**
|
|
231
|
-
* @param {array} a
|
|
232
|
-
*/
|
|
233
|
-
async function foo(a) {
|
|
234
|
-
return;
|
|
235
|
-
}
|
|
236
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
237
|
-
// Message: Missing JSDoc @returns declaration.
|
|
238
|
-
|
|
239
|
-
/**
|
|
240
|
-
* @param {array} a
|
|
241
|
-
*/
|
|
242
|
-
async function foo(a) {
|
|
243
|
-
return Promise.all(a);
|
|
244
|
-
}
|
|
245
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
246
|
-
// Message: Missing JSDoc @returns declaration.
|
|
247
|
-
|
|
248
|
-
class foo {
|
|
249
|
-
/** gets bar */
|
|
250
|
-
get bar() {
|
|
251
|
-
return 0;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkGetters":true}]
|
|
255
|
-
// Message: Missing JSDoc @returns declaration.
|
|
256
|
-
|
|
257
|
-
class TestClass {
|
|
258
|
-
/**
|
|
259
|
-
*
|
|
260
|
-
*/
|
|
261
|
-
constructor() {
|
|
262
|
-
return new Map();
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkConstructors":true}]
|
|
266
|
-
// Message: Missing JSDoc @returns declaration.
|
|
267
|
-
|
|
268
|
-
class TestClass {
|
|
269
|
-
/**
|
|
270
|
-
*
|
|
271
|
-
*/
|
|
272
|
-
get Test() {
|
|
273
|
-
return 0;
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkGetters":true}]
|
|
277
|
-
// Message: Missing JSDoc @returns declaration.
|
|
278
|
-
|
|
279
|
-
class quux {
|
|
280
|
-
/**
|
|
281
|
-
*
|
|
282
|
-
*/
|
|
283
|
-
quux () {
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceRequireReturn":true}]
|
|
287
|
-
// Message: Missing JSDoc @returns declaration.
|
|
288
|
-
|
|
289
|
-
/**
|
|
290
|
-
*
|
|
291
|
-
*/
|
|
292
|
-
function quux (foo) {
|
|
293
|
-
|
|
294
|
-
return new Promise(function (resolve, reject) {
|
|
295
|
-
resolve(foo);
|
|
296
|
-
});
|
|
297
|
-
}
|
|
298
|
-
// Message: Missing JSDoc @returns declaration.
|
|
299
|
-
|
|
300
|
-
/**
|
|
301
|
-
*
|
|
302
|
-
*/
|
|
303
|
-
function quux (foo) {
|
|
304
|
-
|
|
305
|
-
return new Promise(function (resolve, reject) {
|
|
306
|
-
setTimeout(() => {
|
|
307
|
-
resolve(true);
|
|
308
|
-
});
|
|
309
|
-
});
|
|
310
|
-
}
|
|
311
|
-
// Message: Missing JSDoc @returns declaration.
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
*
|
|
315
|
-
*/
|
|
316
|
-
function quux (foo) {
|
|
317
|
-
|
|
318
|
-
return new Promise(function (resolve, reject) {
|
|
319
|
-
foo(resolve);
|
|
320
|
-
});
|
|
321
|
-
}
|
|
322
|
-
// Message: Missing JSDoc @returns declaration.
|
|
323
|
-
|
|
324
|
-
/**
|
|
325
|
-
*
|
|
326
|
-
*/
|
|
327
|
-
function quux () {
|
|
328
|
-
return new Promise((resolve, reject) => {
|
|
329
|
-
while(true) {
|
|
330
|
-
resolve(true);
|
|
331
|
-
}
|
|
332
|
-
});
|
|
333
|
-
}
|
|
334
|
-
// Message: Missing JSDoc @returns declaration.
|
|
335
|
-
|
|
336
|
-
/**
|
|
337
|
-
*
|
|
338
|
-
*/
|
|
339
|
-
function quux () {
|
|
340
|
-
return new Promise((resolve, reject) => {
|
|
341
|
-
do {
|
|
342
|
-
resolve(true);
|
|
343
|
-
}
|
|
344
|
-
while(true)
|
|
345
|
-
});
|
|
346
|
-
}
|
|
347
|
-
// Message: Missing JSDoc @returns declaration.
|
|
348
|
-
|
|
349
|
-
/**
|
|
350
|
-
*
|
|
351
|
-
*/
|
|
352
|
-
function quux () {
|
|
353
|
-
return new Promise((resolve, reject) => {
|
|
354
|
-
if (true) {
|
|
355
|
-
resolve(true);
|
|
356
|
-
}
|
|
357
|
-
return;
|
|
358
|
-
});
|
|
359
|
-
}
|
|
360
|
-
// Message: Missing JSDoc @returns declaration.
|
|
361
|
-
|
|
362
|
-
/**
|
|
363
|
-
*
|
|
364
|
-
*/
|
|
365
|
-
function quux () {
|
|
366
|
-
return new Promise((resolve, reject) => {
|
|
367
|
-
if (true) {
|
|
368
|
-
resolve(true);
|
|
369
|
-
}
|
|
370
|
-
});
|
|
371
|
-
}
|
|
372
|
-
// Message: Missing JSDoc @returns declaration.
|
|
373
|
-
|
|
374
|
-
/**
|
|
375
|
-
*
|
|
376
|
-
*/
|
|
377
|
-
function quux () {
|
|
378
|
-
var a = {};
|
|
379
|
-
return new Promise((resolve, reject) => {
|
|
380
|
-
with (a) {
|
|
381
|
-
resolve(true);
|
|
382
|
-
}
|
|
383
|
-
});
|
|
384
|
-
}
|
|
385
|
-
// Message: Missing JSDoc @returns declaration.
|
|
386
|
-
|
|
387
|
-
/**
|
|
388
|
-
*
|
|
389
|
-
*/
|
|
390
|
-
function quux () {
|
|
391
|
-
var a = {};
|
|
392
|
-
return new Promise((resolve, reject) => {
|
|
393
|
-
try {
|
|
394
|
-
resolve(true);
|
|
395
|
-
} catch (err) {}
|
|
396
|
-
});
|
|
397
|
-
}
|
|
398
|
-
// Message: Missing JSDoc @returns declaration.
|
|
399
|
-
|
|
400
|
-
/**
|
|
401
|
-
*
|
|
402
|
-
*/
|
|
403
|
-
function quux () {
|
|
404
|
-
var a = {};
|
|
405
|
-
return new Promise((resolve, reject) => {
|
|
406
|
-
try {
|
|
407
|
-
} catch (err) {
|
|
408
|
-
resolve(true);
|
|
409
|
-
}
|
|
410
|
-
});
|
|
411
|
-
}
|
|
412
|
-
// Message: Missing JSDoc @returns declaration.
|
|
413
|
-
|
|
414
|
-
/**
|
|
415
|
-
*
|
|
416
|
-
*/
|
|
417
|
-
function quux () {
|
|
418
|
-
var a = {};
|
|
419
|
-
return new Promise((resolve, reject) => {
|
|
420
|
-
try {
|
|
421
|
-
} catch (err) {
|
|
422
|
-
} finally {
|
|
423
|
-
resolve(true);
|
|
424
|
-
}
|
|
425
|
-
});
|
|
426
|
-
}
|
|
427
|
-
// Message: Missing JSDoc @returns declaration.
|
|
428
|
-
|
|
429
|
-
/**
|
|
430
|
-
*
|
|
431
|
-
*/
|
|
432
|
-
function quux () {
|
|
433
|
-
var a = {};
|
|
434
|
-
return new Promise((resolve, reject) => {
|
|
435
|
-
switch (a) {
|
|
436
|
-
case 'abc':
|
|
437
|
-
resolve(true);
|
|
438
|
-
}
|
|
439
|
-
});
|
|
440
|
-
}
|
|
441
|
-
// Message: Missing JSDoc @returns declaration.
|
|
442
|
-
|
|
443
|
-
/**
|
|
444
|
-
*
|
|
445
|
-
*/
|
|
446
|
-
function quux () {
|
|
447
|
-
return new Promise((resolve, reject) => {
|
|
448
|
-
if (true) {
|
|
449
|
-
resolve();
|
|
450
|
-
} else {
|
|
451
|
-
resolve(true);
|
|
452
|
-
}
|
|
453
|
-
});
|
|
454
|
-
}
|
|
455
|
-
// Message: Missing JSDoc @returns declaration.
|
|
456
|
-
|
|
457
|
-
/**
|
|
458
|
-
*
|
|
459
|
-
*/
|
|
460
|
-
function quux () {
|
|
461
|
-
return new Promise((resolve, reject) => {
|
|
462
|
-
for (let i = 0; i < 5 ; i++) {
|
|
463
|
-
resolve(true);
|
|
464
|
-
}
|
|
465
|
-
});
|
|
466
|
-
}
|
|
467
|
-
// Message: Missing JSDoc @returns declaration.
|
|
468
|
-
|
|
469
|
-
/**
|
|
470
|
-
*
|
|
471
|
-
*/
|
|
472
|
-
function quux () {
|
|
473
|
-
return new Promise((resolve, reject) => {
|
|
474
|
-
for (const i of obj) {
|
|
475
|
-
resolve(true);
|
|
476
|
-
}
|
|
477
|
-
});
|
|
478
|
-
}
|
|
479
|
-
// Message: Missing JSDoc @returns declaration.
|
|
480
|
-
|
|
481
|
-
/**
|
|
482
|
-
*
|
|
483
|
-
*/
|
|
484
|
-
function quux () {
|
|
485
|
-
return new Promise((resolve, reject) => {
|
|
486
|
-
for (const i in obj) {
|
|
487
|
-
resolve(true);
|
|
488
|
-
}
|
|
489
|
-
});
|
|
490
|
-
}
|
|
491
|
-
// Message: Missing JSDoc @returns declaration.
|
|
492
|
-
|
|
493
|
-
/**
|
|
494
|
-
*
|
|
495
|
-
*/
|
|
496
|
-
function quux () {
|
|
497
|
-
return new Promise((resolve, reject) => {
|
|
498
|
-
if (true) {
|
|
499
|
-
return;
|
|
500
|
-
} else {
|
|
501
|
-
resolve(true);
|
|
502
|
-
}
|
|
503
|
-
});
|
|
504
|
-
}
|
|
505
|
-
// Message: Missing JSDoc @returns declaration.
|
|
506
|
-
|
|
507
|
-
/**
|
|
508
|
-
*
|
|
509
|
-
*/
|
|
510
|
-
function quux () {
|
|
511
|
-
return new Promise((resolve, reject) => {
|
|
512
|
-
function a () {
|
|
513
|
-
resolve(true);
|
|
514
|
-
}
|
|
515
|
-
a();
|
|
516
|
-
});
|
|
517
|
-
}
|
|
518
|
-
// Message: Missing JSDoc @returns declaration.
|
|
519
|
-
|
|
520
|
-
/**
|
|
521
|
-
*
|
|
522
|
-
*/
|
|
523
|
-
function quux () {
|
|
524
|
-
return new Promise();
|
|
525
|
-
}
|
|
526
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
527
|
-
// Message: Missing JSDoc @returns declaration.
|
|
528
|
-
|
|
529
|
-
/**
|
|
530
|
-
*
|
|
531
|
-
*/
|
|
532
|
-
async function quux () {
|
|
533
|
-
return new Promise();
|
|
534
|
-
}
|
|
535
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
536
|
-
// Message: Missing JSDoc @returns declaration.
|
|
537
|
-
|
|
538
|
-
/**
|
|
539
|
-
*
|
|
540
|
-
*/
|
|
541
|
-
async function quux () {
|
|
542
|
-
return new Promise((resolve, reject) => {});
|
|
543
|
-
}
|
|
544
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
545
|
-
// Message: Missing JSDoc @returns declaration.
|
|
546
|
-
|
|
547
|
-
export class A {
|
|
548
|
-
/**
|
|
549
|
-
* Description.
|
|
550
|
-
*/
|
|
551
|
-
public f(): string {
|
|
552
|
-
return "";
|
|
553
|
-
}
|
|
554
|
-
}
|
|
555
|
-
|
|
556
|
-
export interface B {
|
|
557
|
-
/**
|
|
558
|
-
* Description.
|
|
559
|
-
*/
|
|
560
|
-
f(): string;
|
|
561
|
-
|
|
562
|
-
/**
|
|
563
|
-
* Description.
|
|
564
|
-
*/
|
|
565
|
-
g: () => string;
|
|
566
|
-
|
|
567
|
-
/**
|
|
568
|
-
* Description.
|
|
569
|
-
*/
|
|
570
|
-
h(): void;
|
|
571
|
-
|
|
572
|
-
/**
|
|
573
|
-
* Description.
|
|
574
|
-
*/
|
|
575
|
-
i: () => void;
|
|
576
|
-
}
|
|
577
|
-
|
|
578
|
-
/**
|
|
579
|
-
* Description.
|
|
580
|
-
*/
|
|
581
|
-
export function f(): string {
|
|
582
|
-
return "";
|
|
583
|
-
}
|
|
584
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":[":not(BlockStatement) > FunctionDeclaration","MethodDefinition","TSMethodSignature","TSPropertySignature > TSTypeAnnotation > TSFunctionType"]}]
|
|
585
|
-
// Message: Missing JSDoc @returns declaration.
|
|
586
|
-
|
|
587
|
-
/**
|
|
588
|
-
* @param ms time in millis
|
|
589
|
-
*/
|
|
590
|
-
export const sleep = (ms: number) =>
|
|
591
|
-
new Promise<string>((res) => setTimeout(res, ms));
|
|
592
|
-
// Message: Missing JSDoc @returns declaration.
|
|
593
|
-
|
|
594
|
-
/**
|
|
595
|
-
* @param ms time in millis
|
|
596
|
-
*/
|
|
597
|
-
export const sleep = (ms: number) => {
|
|
598
|
-
return new Promise<string>((res) => setTimeout(res, ms));
|
|
599
|
-
};
|
|
600
|
-
// Message: Missing JSDoc @returns declaration.
|
|
601
|
-
|
|
602
|
-
/**
|
|
603
|
-
* Reads a test fixture.
|
|
604
|
-
*/
|
|
605
|
-
export function readFixture(path: string): Promise<Buffer>;
|
|
606
|
-
// Message: Missing JSDoc @returns declaration.
|
|
607
|
-
|
|
608
|
-
/**
|
|
609
|
-
* Reads a test fixture.
|
|
610
|
-
*/
|
|
611
|
-
export function readFixture(path: string): void;
|
|
612
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
613
|
-
// Message: Missing JSDoc @returns declaration.
|
|
614
|
-
|
|
615
|
-
/**
|
|
616
|
-
* Reads a test fixture.
|
|
617
|
-
*/
|
|
618
|
-
export function readFixture(path: string);
|
|
619
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
620
|
-
// Message: Missing JSDoc @returns declaration.
|
|
621
|
-
|
|
622
|
-
/**
|
|
623
|
-
* @param {array} a
|
|
624
|
-
*/
|
|
625
|
-
async function foo(a) {
|
|
626
|
-
return Promise.all(a);
|
|
627
|
-
}
|
|
628
|
-
// Message: Missing JSDoc @returns declaration.
|
|
629
|
-
|
|
630
|
-
/**
|
|
631
|
-
* Description.
|
|
632
|
-
*/
|
|
633
|
-
export default async function demo() {
|
|
634
|
-
return true;
|
|
635
|
-
}
|
|
636
|
-
// Message: Missing JSDoc @returns declaration.
|
|
637
|
-
|
|
638
|
-
/**
|
|
639
|
-
*
|
|
640
|
-
*/
|
|
641
|
-
function quux () {}
|
|
642
|
-
|
|
643
|
-
class Test {
|
|
644
|
-
/**
|
|
645
|
-
*
|
|
646
|
-
*/
|
|
647
|
-
abstract Test(): string;
|
|
648
|
-
}
|
|
649
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["FunctionDeclaration",{"context":"TSEmptyBodyFunctionExpression","forceRequireReturn":true}]}]
|
|
650
|
-
// Message: Missing JSDoc @returns declaration.
|
|
651
|
-
````
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
<a name="user-content-require-returns-passing-examples"></a>
|
|
656
|
-
<a name="require-returns-passing-examples"></a>
|
|
657
|
-
## Passing examples
|
|
658
|
-
|
|
659
|
-
The following patterns are not considered problems:
|
|
660
|
-
|
|
661
|
-
````js
|
|
662
|
-
/**
|
|
663
|
-
* @returns Foo.
|
|
664
|
-
*/
|
|
665
|
-
function quux () {
|
|
666
|
-
|
|
667
|
-
return foo;
|
|
668
|
-
}
|
|
669
|
-
|
|
670
|
-
/**
|
|
671
|
-
* @returns Foo.
|
|
672
|
-
*/
|
|
673
|
-
function quux () {
|
|
674
|
-
|
|
675
|
-
return foo;
|
|
676
|
-
}
|
|
677
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"]}]
|
|
678
|
-
|
|
679
|
-
/**
|
|
680
|
-
*
|
|
681
|
-
*/
|
|
682
|
-
function quux () {
|
|
683
|
-
}
|
|
684
|
-
|
|
685
|
-
/**
|
|
686
|
-
*
|
|
687
|
-
*/
|
|
688
|
-
function quux (bar) {
|
|
689
|
-
bar.filter(baz => {
|
|
690
|
-
return baz.corge();
|
|
691
|
-
})
|
|
692
|
-
}
|
|
693
|
-
|
|
694
|
-
/**
|
|
695
|
-
* @returns Array
|
|
696
|
-
*/
|
|
697
|
-
function quux (bar) {
|
|
698
|
-
return bar.filter(baz => {
|
|
699
|
-
return baz.corge();
|
|
700
|
-
})
|
|
701
|
-
}
|
|
702
|
-
|
|
703
|
-
/**
|
|
704
|
-
* @returns Array
|
|
705
|
-
*/
|
|
706
|
-
const quux = (bar) => bar.filter(({ corge }) => corge())
|
|
707
|
-
|
|
708
|
-
/**
|
|
709
|
-
* @inheritdoc
|
|
710
|
-
*/
|
|
711
|
-
function quux (foo) {
|
|
712
|
-
}
|
|
713
|
-
|
|
714
|
-
/**
|
|
715
|
-
* @override
|
|
716
|
-
*/
|
|
717
|
-
function quux (foo) {
|
|
718
|
-
}
|
|
719
|
-
|
|
720
|
-
/**
|
|
721
|
-
* @constructor
|
|
722
|
-
*/
|
|
723
|
-
function quux (foo) {
|
|
724
|
-
return true;
|
|
725
|
-
}
|
|
726
|
-
|
|
727
|
-
/**
|
|
728
|
-
* @implements
|
|
729
|
-
*/
|
|
730
|
-
function quux (foo) {
|
|
731
|
-
return true;
|
|
732
|
-
}
|
|
733
|
-
|
|
734
|
-
/**
|
|
735
|
-
* @override
|
|
736
|
-
*/
|
|
737
|
-
function quux (foo) {
|
|
738
|
-
|
|
739
|
-
return foo;
|
|
740
|
-
}
|
|
741
|
-
|
|
742
|
-
/**
|
|
743
|
-
* @class
|
|
744
|
-
*/
|
|
745
|
-
function quux (foo) {
|
|
746
|
-
return true;
|
|
747
|
-
}
|
|
748
|
-
|
|
749
|
-
/**
|
|
750
|
-
* @constructor
|
|
751
|
-
*/
|
|
752
|
-
function quux (foo) {
|
|
753
|
-
|
|
754
|
-
}
|
|
755
|
-
|
|
756
|
-
/**
|
|
757
|
-
* @returns {object}
|
|
758
|
-
*/
|
|
759
|
-
function quux () {
|
|
760
|
-
|
|
761
|
-
return {a: foo};
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
/**
|
|
765
|
-
* @returns {object}
|
|
766
|
-
*/
|
|
767
|
-
const quux = () => ({a: foo});
|
|
768
|
-
|
|
769
|
-
/**
|
|
770
|
-
* @returns {object}
|
|
771
|
-
*/
|
|
772
|
-
const quux = () => {
|
|
773
|
-
return {a: foo}
|
|
774
|
-
};
|
|
775
|
-
|
|
776
|
-
/**
|
|
777
|
-
* @returns {void}
|
|
778
|
-
*/
|
|
779
|
-
function quux () {
|
|
780
|
-
}
|
|
781
|
-
|
|
782
|
-
/**
|
|
783
|
-
* @returns {void}
|
|
784
|
-
*/
|
|
785
|
-
const quux = () => {
|
|
786
|
-
|
|
787
|
-
}
|
|
788
|
-
|
|
789
|
-
/**
|
|
790
|
-
* @returns {undefined}
|
|
791
|
-
*/
|
|
792
|
-
function quux () {
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
/**
|
|
796
|
-
* @returns {undefined}
|
|
797
|
-
*/
|
|
798
|
-
const quux = () => {
|
|
799
|
-
|
|
800
|
-
}
|
|
801
|
-
|
|
802
|
-
/**
|
|
803
|
-
*
|
|
804
|
-
*/
|
|
805
|
-
function quux () {
|
|
806
|
-
}
|
|
807
|
-
|
|
808
|
-
/**
|
|
809
|
-
*
|
|
810
|
-
*/
|
|
811
|
-
const quux = () => {
|
|
812
|
-
|
|
813
|
-
}
|
|
814
|
-
|
|
815
|
-
class Foo {
|
|
816
|
-
/**
|
|
817
|
-
*
|
|
818
|
-
*/
|
|
819
|
-
constructor () {
|
|
820
|
-
}
|
|
821
|
-
}
|
|
822
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
823
|
-
|
|
824
|
-
const language = {
|
|
825
|
-
/**
|
|
826
|
-
* @param {string} name
|
|
827
|
-
*/
|
|
828
|
-
set name(name) {
|
|
829
|
-
this._name = name;
|
|
830
|
-
}
|
|
831
|
-
}
|
|
832
|
-
|
|
833
|
-
/**
|
|
834
|
-
* @returns {void}
|
|
835
|
-
*/
|
|
836
|
-
function quux () {
|
|
837
|
-
}
|
|
838
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
839
|
-
|
|
840
|
-
/**
|
|
841
|
-
* @returns {void}
|
|
842
|
-
*/
|
|
843
|
-
function quux () {
|
|
844
|
-
return undefined;
|
|
845
|
-
}
|
|
846
|
-
|
|
847
|
-
/**
|
|
848
|
-
* @returns {void}
|
|
849
|
-
*/
|
|
850
|
-
function quux () {
|
|
851
|
-
return undefined;
|
|
852
|
-
}
|
|
853
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
854
|
-
|
|
855
|
-
/**
|
|
856
|
-
* @returns {void}
|
|
857
|
-
*/
|
|
858
|
-
function quux () {
|
|
859
|
-
return;
|
|
860
|
-
}
|
|
861
|
-
|
|
862
|
-
/**
|
|
863
|
-
* @returns {void}
|
|
864
|
-
*/
|
|
865
|
-
function quux () {
|
|
866
|
-
}
|
|
867
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
868
|
-
|
|
869
|
-
/**
|
|
870
|
-
* @returns {void}
|
|
871
|
-
*/
|
|
872
|
-
function quux () {
|
|
873
|
-
return;
|
|
874
|
-
}
|
|
875
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
876
|
-
|
|
877
|
-
/** @type {RequestHandler} */
|
|
878
|
-
function quux (req, res , next) {
|
|
879
|
-
return;
|
|
880
|
-
}
|
|
881
|
-
|
|
882
|
-
/**
|
|
883
|
-
* @returns {Promise}
|
|
884
|
-
*/
|
|
885
|
-
async function quux () {
|
|
886
|
-
}
|
|
887
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
888
|
-
|
|
889
|
-
/**
|
|
890
|
-
* @returns {Promise}
|
|
891
|
-
*/
|
|
892
|
-
async function quux () {
|
|
893
|
-
}
|
|
894
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
895
|
-
|
|
896
|
-
/**
|
|
897
|
-
*
|
|
898
|
-
*/
|
|
899
|
-
async function quux () {}
|
|
900
|
-
|
|
901
|
-
/**
|
|
902
|
-
*
|
|
903
|
-
*/
|
|
904
|
-
const quux = async function () {}
|
|
905
|
-
|
|
906
|
-
/**
|
|
907
|
-
*
|
|
908
|
-
*/
|
|
909
|
-
const quux = async () => {}
|
|
910
|
-
|
|
911
|
-
/** foo class */
|
|
912
|
-
class foo {
|
|
913
|
-
/** foo constructor */
|
|
914
|
-
constructor () {
|
|
915
|
-
// =>
|
|
916
|
-
this.bar = true;
|
|
917
|
-
}
|
|
918
|
-
}
|
|
919
|
-
|
|
920
|
-
export default foo;
|
|
921
|
-
|
|
922
|
-
/**
|
|
923
|
-
*
|
|
924
|
-
*/
|
|
925
|
-
function quux () {
|
|
926
|
-
}
|
|
927
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
928
|
-
|
|
929
|
-
/**
|
|
930
|
-
* @type {MyCallback}
|
|
931
|
-
*/
|
|
932
|
-
function quux () {
|
|
933
|
-
|
|
934
|
-
}
|
|
935
|
-
// "jsdoc/require-returns": ["error"|"warn", {"exemptedBy":["type"]}]
|
|
936
|
-
|
|
937
|
-
/**
|
|
938
|
-
* @param {array} a
|
|
939
|
-
*/
|
|
940
|
-
async function foo(a) {
|
|
941
|
-
return;
|
|
942
|
-
}
|
|
943
|
-
|
|
944
|
-
/**
|
|
945
|
-
*
|
|
946
|
-
*/
|
|
947
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"]}]
|
|
948
|
-
|
|
949
|
-
/**
|
|
950
|
-
* @async
|
|
951
|
-
*/
|
|
952
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"]}]
|
|
953
|
-
|
|
954
|
-
/**
|
|
955
|
-
* @function
|
|
956
|
-
*/
|
|
957
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
958
|
-
|
|
959
|
-
/**
|
|
960
|
-
* @callback
|
|
961
|
-
*/
|
|
962
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceRequireReturn":true}]
|
|
963
|
-
|
|
964
|
-
/**
|
|
965
|
-
* @function
|
|
966
|
-
* @async
|
|
967
|
-
*/
|
|
968
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
969
|
-
|
|
970
|
-
/**
|
|
971
|
-
* @callback
|
|
972
|
-
* @async
|
|
973
|
-
*/
|
|
974
|
-
// "jsdoc/require-returns": ["error"|"warn", {"forceReturnsWithAsync":true}]
|
|
975
|
-
|
|
976
|
-
/**
|
|
977
|
-
* @function
|
|
978
|
-
*/
|
|
979
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceReturnsWithAsync":true}]
|
|
980
|
-
|
|
981
|
-
/**
|
|
982
|
-
* @callback
|
|
983
|
-
*/
|
|
984
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["any"],"forceReturnsWithAsync":true}]
|
|
985
|
-
|
|
986
|
-
class foo {
|
|
987
|
-
get bar() {
|
|
988
|
-
return 0;
|
|
989
|
-
}
|
|
990
|
-
}
|
|
991
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkGetters":false}]
|
|
992
|
-
|
|
993
|
-
class foo {
|
|
994
|
-
/** @returns zero */
|
|
995
|
-
get bar() {
|
|
996
|
-
return 0;
|
|
997
|
-
}
|
|
998
|
-
}
|
|
999
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkGetters":true}]
|
|
1000
|
-
|
|
1001
|
-
class foo {
|
|
1002
|
-
/** @returns zero */
|
|
1003
|
-
get bar() {
|
|
1004
|
-
return 0;
|
|
1005
|
-
}
|
|
1006
|
-
}
|
|
1007
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkGetters":false}]
|
|
1008
|
-
|
|
1009
|
-
class TestClass {
|
|
1010
|
-
/**
|
|
1011
|
-
*
|
|
1012
|
-
*/
|
|
1013
|
-
constructor() { }
|
|
1014
|
-
}
|
|
1015
|
-
|
|
1016
|
-
class TestClass {
|
|
1017
|
-
/**
|
|
1018
|
-
* @returns A map.
|
|
1019
|
-
*/
|
|
1020
|
-
constructor() {
|
|
1021
|
-
return new Map();
|
|
1022
|
-
}
|
|
1023
|
-
}
|
|
1024
|
-
|
|
1025
|
-
class TestClass {
|
|
1026
|
-
/**
|
|
1027
|
-
*
|
|
1028
|
-
*/
|
|
1029
|
-
constructor() { }
|
|
1030
|
-
}
|
|
1031
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkConstructors":false}]
|
|
1032
|
-
|
|
1033
|
-
class TestClass {
|
|
1034
|
-
/**
|
|
1035
|
-
*
|
|
1036
|
-
*/
|
|
1037
|
-
get Test() { }
|
|
1038
|
-
}
|
|
1039
|
-
|
|
1040
|
-
class TestClass {
|
|
1041
|
-
/**
|
|
1042
|
-
* @returns A number.
|
|
1043
|
-
*/
|
|
1044
|
-
get Test() {
|
|
1045
|
-
return 0;
|
|
1046
|
-
}
|
|
1047
|
-
}
|
|
1048
|
-
|
|
1049
|
-
class TestClass {
|
|
1050
|
-
/**
|
|
1051
|
-
*
|
|
1052
|
-
*/
|
|
1053
|
-
get Test() {
|
|
1054
|
-
return 0;
|
|
1055
|
-
}
|
|
1056
|
-
}
|
|
1057
|
-
// "jsdoc/require-returns": ["error"|"warn", {"checkGetters":false}]
|
|
1058
|
-
|
|
1059
|
-
/**
|
|
1060
|
-
*
|
|
1061
|
-
*/
|
|
1062
|
-
function quux (foo) {
|
|
1063
|
-
|
|
1064
|
-
return new Promise(function (resolve, reject) {
|
|
1065
|
-
resolve();
|
|
1066
|
-
});
|
|
1067
|
-
}
|
|
1068
|
-
|
|
1069
|
-
/**
|
|
1070
|
-
*
|
|
1071
|
-
*/
|
|
1072
|
-
function quux (foo) {
|
|
1073
|
-
|
|
1074
|
-
return new Promise(function (resolve, reject) {
|
|
1075
|
-
setTimeout(() => {
|
|
1076
|
-
resolve();
|
|
1077
|
-
});
|
|
1078
|
-
});
|
|
1079
|
-
}
|
|
1080
|
-
|
|
1081
|
-
/**
|
|
1082
|
-
*
|
|
1083
|
-
*/
|
|
1084
|
-
function quux (foo) {
|
|
1085
|
-
|
|
1086
|
-
return new Promise(function (resolve, reject) {
|
|
1087
|
-
foo();
|
|
1088
|
-
});
|
|
1089
|
-
}
|
|
1090
|
-
|
|
1091
|
-
/**
|
|
1092
|
-
*
|
|
1093
|
-
*/
|
|
1094
|
-
function quux (foo) {
|
|
1095
|
-
|
|
1096
|
-
return new Promise(function (resolve, reject) {
|
|
1097
|
-
abc((resolve) => {
|
|
1098
|
-
resolve(true);
|
|
1099
|
-
});
|
|
1100
|
-
});
|
|
1101
|
-
}
|
|
1102
|
-
|
|
1103
|
-
/**
|
|
1104
|
-
*
|
|
1105
|
-
*/
|
|
1106
|
-
function quux (foo) {
|
|
1107
|
-
|
|
1108
|
-
return new Promise(function (resolve, reject) {
|
|
1109
|
-
abc(function (resolve) {
|
|
1110
|
-
resolve(true);
|
|
1111
|
-
});
|
|
1112
|
-
});
|
|
1113
|
-
}
|
|
1114
|
-
|
|
1115
|
-
/**
|
|
1116
|
-
*
|
|
1117
|
-
*/
|
|
1118
|
-
function quux () {
|
|
1119
|
-
return new Promise((resolve, reject) => {
|
|
1120
|
-
if (true) {
|
|
1121
|
-
resolve();
|
|
1122
|
-
}
|
|
1123
|
-
});
|
|
1124
|
-
return;
|
|
1125
|
-
}
|
|
1126
|
-
|
|
1127
|
-
/**
|
|
1128
|
-
*
|
|
1129
|
-
*/
|
|
1130
|
-
function quux () {
|
|
1131
|
-
return new Promise();
|
|
1132
|
-
}
|
|
1133
|
-
|
|
1134
|
-
/**
|
|
1135
|
-
* Description.
|
|
1136
|
-
*/
|
|
1137
|
-
async function foo() {
|
|
1138
|
-
return new Promise(resolve => resolve());
|
|
1139
|
-
}
|
|
1140
|
-
|
|
1141
|
-
/**
|
|
1142
|
-
* @param ms time in millis
|
|
1143
|
-
*/
|
|
1144
|
-
export const sleep = (ms: number) =>
|
|
1145
|
-
new Promise<void>((res) => setTimeout(res, ms));
|
|
1146
|
-
|
|
1147
|
-
/**
|
|
1148
|
-
* @param ms time in millis
|
|
1149
|
-
*/
|
|
1150
|
-
export const sleep = (ms: number) => {
|
|
1151
|
-
return new Promise<void>((res) => setTimeout(res, ms));
|
|
1152
|
-
};
|
|
1153
|
-
|
|
1154
|
-
/**
|
|
1155
|
-
* Reads a test fixture.
|
|
1156
|
-
*
|
|
1157
|
-
* @returns The file contents as buffer.
|
|
1158
|
-
*/
|
|
1159
|
-
export function readFixture(path: string): Promise<Buffer>;
|
|
1160
|
-
|
|
1161
|
-
/**
|
|
1162
|
-
* Reads a test fixture.
|
|
1163
|
-
*
|
|
1164
|
-
* @returns {void}.
|
|
1165
|
-
*/
|
|
1166
|
-
export function readFixture(path: string): void;
|
|
1167
|
-
|
|
1168
|
-
/**
|
|
1169
|
-
* Reads a test fixture.
|
|
1170
|
-
*/
|
|
1171
|
-
export function readFixture(path: string): void;
|
|
1172
|
-
|
|
1173
|
-
/**
|
|
1174
|
-
* Reads a test fixture.
|
|
1175
|
-
*/
|
|
1176
|
-
export function readFixture(path: string);
|
|
1177
|
-
|
|
1178
|
-
/**
|
|
1179
|
-
*
|
|
1180
|
-
*/
|
|
1181
|
-
function quux () {}
|
|
1182
|
-
|
|
1183
|
-
class Test {
|
|
1184
|
-
/**
|
|
1185
|
-
* @returns {string} The test value
|
|
1186
|
-
*/
|
|
1187
|
-
abstract Test(): string;
|
|
1188
|
-
}
|
|
1189
|
-
// "jsdoc/require-returns": ["error"|"warn", {"contexts":["FunctionDeclaration",{"context":"TSEmptyBodyFunctionExpression","forceRequireReturn":true}]}]
|
|
1190
|
-
````
|
|
1191
|
-
|