This repository was archived by the owner on Aug 31, 2023. It is now read-only.
feat(rome_js_analyze): useEnumInitializers
#3839
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This implements ESLint's prefer-enum-initializers under the name
useEnumInitializers
.In contrast to ESLint, this PR adds some improvement to the suggested fix.
ESLint suggests for any member two possible fixes: assigning 0 or assigning the name of the member.
This rule proposes a possible fix based on the last (among previous) initialized member, if any. If this member does not exist or if it is a number, then the proposed value corresponds to the implicit value of the member (given by TSC). Otherwise, if the member exists, is a string that is equal to the member name, then the proposed value is the name of the member.
Test Plan
Unit tests and doc-tests included.