yield-star-spacing
Rule Details
This rule enforces spacing around the * in yield* expressions.
Options
The rule takes one option, an object, which has two keys before and after having boolean values true or false.
beforeenforces spacing between theyieldand the*. Iftrue, a space is required, otherwise spaces are disallowed.afterenforces spacing between the*and the argument. If it istrue, a space is required, otherwise spaces are disallowed.
The default is {"before": false, "after": true}.
"yield-star-spacing": ["error", {"before": true, "after": false}]The option also has a string shorthand:
{"before": false, "after": true}→"after"{"before": true, "after": false}→"before"{"before": true, "after": true}→"both"{"before": false, "after": false}→"neither"
"yield-star-spacing": ["error", "after"]Examples
after
Examples of correct code for this rule with the default "after" option:
/* eslint @stylistic/yield-star-spacing: ["error", "after"] */
function* generator() {
yield* other();
}before
Examples of correct code for this rule with the "before" option:
/* eslint @stylistic/yield-star-spacing: ["error", "before"] */
function *generator() {
yield *other();
}both
Examples of correct code for this rule with the "both" option:
/* eslint @stylistic/yield-star-spacing: ["error", "both"] */
function * generator() {
yield * other();
}neither
Examples of correct code for this rule with the "neither" option:
/* eslint @stylistic/yield-star-spacing: ["error", "neither"] */
function*generator() {
yield*other();
}When Not To Use It
If your project will not be using generators or you are not concerned with spacing consistency, you do not need this rule.