NOTE: the challenge is to find a good way to deal with the properties created from such a spread operator within the internal representation of the types model (see TStructuralType in Types.xcore). One possible solution might(!) be to let a TStructuralType refer to the types that were "patched in" via spread, similar to inheritance.
ACs
Adjust type system.
Adjust transpiler.
Discuss whether we should transpiler spread in object literals to ES6.
Remove obsolete "unsupported feature" error message for spread operator.
Make sure hyperlinks, content assist, etc. are working (as far as possible) with types created from object literals that contain a spread operator.
As a developer I want to make use of the ES2015 spread operator in object literals (not in array literals #1378 or call expressions #1377).
Syntax is already in place (see #46). This task is about adding support in the type system, transpiler, etc.
See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax
NOTE: the challenge is to find a good way to deal with the properties created from such a spread operator within the internal representation of the types model (see
TStructuralType
inTypes.xcore
). One possible solution might(!) be to let aTStructuralType
refer to the types that were "patched in" via spread, similar to inheritance.ACs