Mentions légales du service

Skip to content

Model/disable operation reflection

Setting operationReflection to true in Xcore/Ecore genmodels enables the generation of support for reflective operations invocation. This includes the generation of operation IDs in the EPakage and the method eInvoke for each EClass in the package.

When enabling operationReflection in multiple interdependent Xcore models, the code generation is not deterministic; the operation IDs names changes depending on the order in which the models are being generated. (This problem was not encountered with Ecore since all package were defined in one model).

To avoid this problem, this commit disables operationReflection for all GeCoS models. This is not an issue since the reflection operations are not used anyway, and this also makes the code a bit lighter.

IMPORTANT: any Ecore/Xcore model that includes GeCoS core models MUST disable operationReflection, otherwise its generated code will have errors.

Merge request reports