package NewLanguage2.structure; /*Generated by MPS */ import jetbrains.mps.smodel.runtime.BaseStructureAspectDescriptor; import java.util.Map; import jetbrains.mps.smodel.adapter.ids.SConceptId; import java.util.HashMap; import jetbrains.mps.smodel.runtime.ConceptDescriptor; import java.util.Collection; import java.util.Arrays; import org.jetbrains.annotations.Nullable; import org.jetbrains.mps.openapi.language.SAbstractConcept; import jetbrains.mps.smodel.adapter.structure.concept.SConceptAdapterById; import jetbrains.mps.smodel.adapter.structure.concept.SInterfaceConceptAdapterById; import jetbrains.mps.smodel.runtime.impl.ConceptDescriptorBuilder; import jetbrains.mps.smodel.adapter.ids.MetaIdFactory; import jetbrains.mps.smodel.SNodePointer; public class StructureAspectDescriptor extends BaseStructureAspectDescriptor { private final Map<SConceptId, Integer> myIndexMap = new HashMap<SConceptId, Integer>(1); /*package*/ final ConceptDescriptor myConceptABC2 = createDescriptorForABC2(); public StructureAspectDescriptor() { myIndexMap.put(myConceptABC2.getId(), 0); } @Override public Collection<ConceptDescriptor> getDescriptors() { return Arrays.asList(myConceptABC2); } @Override @Nullable public ConceptDescriptor getDescriptor(SConceptId id) { Integer index = myIndexMap.get(id); if (index == null) { return null; } switch (((int) index)) { case 0: return myConceptABC2; default: throw new IllegalStateException(); } } /*package*/ int internalIndex(SAbstractConcept c) { Integer res = null; if (c instanceof SConceptAdapterById) { res = myIndexMap.get(((SConceptAdapterById) c).getId()); } else if (c instanceof SInterfaceConceptAdapterById) { res = myIndexMap.get(((SInterfaceConceptAdapterById) c).getId()); } return (res == null ? -1 : res); } private static ConceptDescriptor createDescriptorForABC2() { return new ConceptDescriptorBuilder("NewLanguage2.structure.ABC2", MetaIdFactory.conceptId(0x9d4153a9a1004911L, 0x9688094a7ba99d12L, 0x41516ee9df6334a3L)).super_("jetbrains.mps.lang.core.structure.BaseConcept").version(1).super_(MetaIdFactory.conceptId(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x10802efe25aL)).parents("jetbrains.mps.lang.core.structure.BaseConcept", "jetbrains.mps.lang.core.structure.INamedConcept").parentIds(MetaIdFactory.conceptId(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x10802efe25aL), MetaIdFactory.conceptId(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L)).rootable().sourceNode(new SNodePointer("r:d9728a19-482f-432e-84d2-8149eb740846(NewLanguage2.structure)", "4706665036333135011")).create(); } }