Improve completions for inline record fields #7601
Merged
+172
−78
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.
This change improves inline record completions by:
These changes were implemented by reusing the completion logic used for records.
Explanation
While we currently show completions for record fields by creating a
Field
field completion for each field...rescript/analysis/src/CompletionBackEnd.ml
Lines 1720 to 1741 in 6e6fe0a
... for inline records we only emit
Label "Inline record"
:rescript/analysis/src/CompletionBackEnd.ml
Lines 1763 to 1765 in 6e6fe0a
In commit 1b0296c, I copied the completion logic for records over to the inline records handler. I also added completion tests for inline records.
Then in commit 2758057, I extracted the common logic into a helper function called
getRecordCompletions
.