Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GTS pivot layer #3

Open
szschaler opened this issue Sep 18, 2019 · 0 comments
Open

Add GTS pivot layer #3

szschaler opened this issue Sep 18, 2019 · 0 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@szschaler
Copy link
Member

The tool currently only supports Henshin-based GTSs. We should add a pivot layer to enable support for arbitrary GTSs. I have made some start on this already, but had to move it out for now as the EMF/Xtext wrangling got too much and distracted from the main purpose of the tool.

The exploration/discussion has provided some insights into how to get this done, though. The core idea is to do something similar to what Ed Willinks did for his OCL Pivot model: this is a separate model in a separate resource. The URI for this resource is of the form *.x.oclas where x is an extension specific to a particular language. A special resource factory creates resources for oclas files and these translate on first load. Otherwise, they're pretty much normal resources. The only thing that remains to do then is to get Xtext to load the oclas resources. I was originally thinking of fiddling with how Xtext finds resources and to create virtual resources for all resources to be wrapped. I now think there's actually a much easier way by asking the user to explicitly import the pivot resource into their morphism specification.

Links

@szschaler szschaler added enhancement New feature or request help wanted Extra attention is needed labels Sep 18, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant