1 package jetbrains.mps.samples.customizedDebugger.Bottomline;
5 import jetbrains.mps.smodel.language.LanguageRuntime;
6 import jetbrains.mps.smodel.adapter.ids.SLanguageId;
7 import java.util.Collection;
8 import org.jetbrains.mps.openapi.language.SLanguage;
9 import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
10 import jetbrains.mps.smodel.runtime.ILanguageAspect;
11 import jetbrains.mps.smodel.runtime.BehaviorAspectDescriptor;
12 import jetbrains.mps.smodel.runtime.ConstraintsAspectDescriptor;
13 import jetbrains.mps.openapi.editor.descriptor.EditorAspectDescriptor;
14 import jetbrains.mps.samples.customizedDebugger.Bottomline.editor.EditorAspectDescriptorImpl;
15 import jetbrains.mps.smodel.runtime.MakeAspectDescriptor;
16 import jetbrains.mps.samples.customizedDebugger.Bottomline.plugin.FacetAspectDescriptor;
17 import jetbrains.mps.smodel.runtime.StructureAspectDescriptor;
18 import jetbrains.mps.smodel.runtime.ConceptPresentationAspect;
19 import jetbrains.mps.samples.customizedDebugger.Bottomline.structure.ConceptPresentationAspectImpl;
20 import jetbrains.mps.text.rt.TextGenAspectDescriptor;
21 import jetbrains.mps.lang.typesystem.runtime.IHelginsDescriptor;
22 import jetbrains.mps.samples.customizedDebugger.Bottomline.typesystem.TypesystemDescriptor;
24 public class Language extends LanguageRuntime {
25 private final SLanguageId myId;
28 myId = SLanguageId.deserialize("3f028972-a290-4cf2-a87e-9b8f7e56076b");
32 public String getNamespace() {
33 return "jetbrains.mps.samples.customizedDebugger.Bottomline";
37 public int getVersion() {
41 public SLanguageId getId() {
46 protected void fillExtendedLanguages(Collection<SLanguage> extendedLanguages) {
47 extendedLanguages.add(MetaAdapterFactory.getLanguage(SLanguageId.deserialize("9ded098b-ad6a-4657-bfd9-48636cfe8bc3"), "jetbrains.mps.lang.traceable"));
48 extendedLanguages.add(MetaAdapterFactory.getLanguage(SLanguageId.deserialize("4caf0310-491e-41f5-8a9b-2006b3a94898"), "jetbrains.mps.execution.util"));
52 protected <T extends ILanguageAspect> T createAspect(Class<T> aspectClass) {
53 if (aspectClass == BehaviorAspectDescriptor.class) {
54 return aspectClass.cast(new jetbrains.mps.samples.customizedDebugger.Bottomline.behavior.BehaviorAspectDescriptor());
56 if (aspectClass == ConstraintsAspectDescriptor.class) {
57 return aspectClass.cast(new jetbrains.mps.samples.customizedDebugger.Bottomline.constraints.ConstraintsAspectDescriptor());
59 if (aspectClass == EditorAspectDescriptor.class) {
60 return aspectClass.cast(new EditorAspectDescriptorImpl());
62 if (aspectClass == MakeAspectDescriptor.class) {
63 return aspectClass.cast(new FacetAspectDescriptor());
65 if (aspectClass == StructureAspectDescriptor.class) {
66 return aspectClass.cast(new jetbrains.mps.samples.customizedDebugger.Bottomline.structure.StructureAspectDescriptor());
68 if (aspectClass == ConceptPresentationAspect.class) {
69 return aspectClass.cast(new ConceptPresentationAspectImpl());
71 if (aspectClass == TextGenAspectDescriptor.class) {
72 return aspectClass.cast(new jetbrains.mps.samples.customizedDebugger.Bottomline.textGen.TextGenAspectDescriptor());
74 if (aspectClass == IHelginsDescriptor.class) {
75 return aspectClass.cast(new TypesystemDescriptor());