Add code actions to generate doc comments #4642
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.
Description
Closes #4571
Following the directory structure for code actions that was there before, I've added new modules for:
Following FuelLabs/sway-standards#5, the doc comment template is the same for all of these except for functions. For functions, the template includes the argument names & types, return value, and a generated example of usage which is just meant to be a starting point for the comment author.
For the basic template that most of these use, I created
BasicDocCommentCodeAction
. I also refactored some of the "generate impl" code actions that were there before into a trait calledGenerateImplCodeAction
to keep their common functionality separate from the "generate doc comment" code actions.I updated the existing code action tests for enums & structs, and added a new one for functions. I didn't think it was necessary to test enum variants, storage fields, etc. since the template and underlying code is the same.
Example generating docs for a function
Checklist
Breaking*
orNew Feature
labels where relevant.