feat: add support for multiple interface extensions #68
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.
Why
As I had similar needs as the one mentioned in #67, i.e. to be able to support multiple interface
extends
, I decided to give it a go.Input
With the following definition
or
Output
I don't think merging the Object Literals as described in the original ticket makes sense (and it's probably more difficult to implement 😉 ) so I want with a simple
extend
referencing the schema'sshape
property.Note
I'm not sure of the semantic difference between using the "extend chain" (
c extends a extends b
) and the "extend types" (c extends a,b
) so implemented them the same way for now. To be discussed maybe.