package jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure; /*Generated by MPS */ import jetbrains.mps.smodel.runtime.BaseStructureAspectDescriptor; import jetbrains.mps.smodel.runtime.ConceptDescriptor; import java.util.Collection; import java.util.Arrays; import org.jetbrains.annotations.Nullable; import jetbrains.mps.smodel.adapter.ids.SConceptId; import org.jetbrains.mps.openapi.language.SAbstractConcept; import jetbrains.mps.smodel.runtime.impl.ConceptDescriptorBuilder2; public class StructureAspectDescriptor extends BaseStructureAspectDescriptor { /*package*/ final ConceptDescriptor myConceptChild = createDescriptorForChild(); /*package*/ final ConceptDescriptor myConceptOtherSubconceptOfChild = createDescriptorForOtherSubconceptOfChild(); /*package*/ final ConceptDescriptor myConceptParent = createDescriptorForParent(); /*package*/ final ConceptDescriptor myConceptSubconceptOfChild = createDescriptorForSubconceptOfChild(); private final LanguageConceptSwitch myConceptIndex; public StructureAspectDescriptor() { myConceptIndex = new LanguageConceptSwitch(); } @Override public Collection<ConceptDescriptor> getDescriptors() { return Arrays.asList(myConceptChild, myConceptOtherSubconceptOfChild, myConceptParent, myConceptSubconceptOfChild); } @Override @Nullable public ConceptDescriptor getDescriptor(SConceptId id) { switch (myConceptIndex.index(id)) { case LanguageConceptSwitch.Child: return myConceptChild; case LanguageConceptSwitch.OtherSubconceptOfChild: return myConceptOtherSubconceptOfChild; case LanguageConceptSwitch.Parent: return myConceptParent; case LanguageConceptSwitch.SubconceptOfChild: return myConceptSubconceptOfChild; default: return null; } } /*package*/ int internalIndex(SAbstractConcept c) { return myConceptIndex.index(c); } private static ConceptDescriptor createDescriptorForChild() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage", "Child", 0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x4d6a8b533e60aa32L); b.class_(false, false, false); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:965ddf1f-d8c1-4f52-b6c1-9bbaf0a8af5b(jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure)/5578424278096849458"); b.alias("child"); return b.create(); } private static ConceptDescriptor createDescriptorForOtherSubconceptOfChild() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage", "OtherSubconceptOfChild", 0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x7d40c2eb5957a904L); b.class_(false, false, false); b.super_("jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure.Child", 0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x4d6a8b533e60aa32L); b.origin("r:965ddf1f-d8c1-4f52-b6c1-9bbaf0a8af5b(jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure)/9025427969322494212"); return b.create(); } private static ConceptDescriptor createDescriptorForParent() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage", "Parent", 0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x4d6a8b533e60aa4dL); b.class_(false, false, true); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:965ddf1f-d8c1-4f52-b6c1-9bbaf0a8af5b(jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure)/5578424278096849485"); b.aggregate("children", 0x4d6a8b533e60aa58L).target(0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x4d6a8b533e60aa32L).optional(true).ordered(true).multiple(true).origin("5578424278096849496").done(); b.alias("parent"); return b.create(); } private static ConceptDescriptor createDescriptorForSubconceptOfChild() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage", "SubconceptOfChild", 0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x1b49c84ee1cc743bL); b.class_(false, false, false); b.super_("jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure.Child", 0x9a629f9aabc94c29L, 0xb1b8db7f349f7fbcL, 0x4d6a8b533e60aa32L); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:965ddf1f-d8c1-4f52-b6c1-9bbaf0a8af5b(jetbrains.mps.lang.editor.menus.contextAssistant.testLanguage.structure)/1966322953445209147"); return b.create(); } }