I'm wondering what's the difference between facet and FrameworkType, both of them seem to add support for a new language/framework + downloading things + configuring things...
I'm a little confused, because sometimes a facet is used (Spring, Android), and sometimes it's a framework (kotlin, groovy).
I'm developing a custom language plugin for Ceylon, and I would like to mark a given module as "contains ceylon code", either because it was created as a ceylon module, or because we detected a ceylon file in a java project. When a module is identified as containing ceylon stuff, it will:
- invoke a type checker that will be used everywhere in the plugin
- add a new settings panel for this module
Now, since I don't understand the difference between facets and frameworks, I'm not sure which solution I should implement. Could one of you provide me some guidance here?