-
Notifications
You must be signed in to change notification settings - Fork 928
Closed
Description
👋 Hey there. I'm working on a generator for F# types using the metamodel. I'm nearly there, however I've run into a what I think may be an discrepancy with the metamodel.
There are some types that are listed as extends in the LSP Spec page but are listed as mixins in the metamodel.
For brevity the definitions of these are:
- extends: "Structures extended from. This structures form a polymorphic type hierarchy."
- mixins: "Structures to mix in. The properties of these structures are
copiedinto this structure. Mixins don't form a polymorphic type hierarchy in LSP."
Example of discrepancy:
ImplementationOption lists WorkDoneProgressOptions in the sepc:
export interface ImplementationOptions extends WorkDoneProgressOptions {
}but in the metamodel it's listed as a mixin:
{
"name": "ImplementationOptions",
"properties": [],
"mixins": [
{
"kind": "reference",
"name": "WorkDoneProgressOptions"
}
]
},There's also a similar situation for WorkDoneProgressParams.
I'm unsure which is the case, maybe this is my misunderstanding about typescript in general.
Any guidance would be appreciated. Thanks!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels