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 adds hover info for a bunch of things that I didn't get around to in the initial hover upgrade,
including:
metadata
,namespace
,use
,apply
,with
, andfor
I had to add new builtin model for the non-shape keywords, but reused
ShapeMemberTargets
forshape type keyword hover.
I also had to add a way to check if the cursor was inside the keyword of a statement, which simplifies
IdlPosition a bit too.
The Smithy docs links use
externalDocumentation
, like the smithy-build.json model, and I also addeda way to include docs links to all members of a builtin shape, because there's some things which don't
have a great link for themselves specifically, but it would still be nice to allow navigating to some
docs page that could be useful. This works by adding the
externalDocumentation
trait to the rootshape in the builtins model, and having the hover implementation add any external docs from the
container shape when constructing hover for a builtin. So, for example, hovering over
"version": "1.0"
in smithy-build.json now also includes a link to the smithy-build.json page.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.