package testOverridingType.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; import jetbrains.mps.smodel.runtime.ConceptKind; import jetbrains.mps.smodel.runtime.StaticScope; public class StructureAspectDescriptor extends BaseStructureAspectDescriptor { /*package*/ final ConceptDescriptor myConceptErrorType = createDescriptorForErrorType(); /*package*/ final ConceptDescriptor myConceptOverrideAnnotation = createDescriptorForOverrideAnnotation(); /*package*/ final ConceptDescriptor myConceptOverridingPrimFloatType = createDescriptorForOverridingPrimFloatType(); /*package*/ final ConceptDescriptor myConceptOverridingPrimIntType = createDescriptorForOverridingPrimIntType(); /*package*/ final ConceptDescriptor myConceptOverridingPrimNumConstant = createDescriptorForOverridingPrimNumConstant(); /*package*/ final ConceptDescriptor myConceptUnconditionalOverrideAnnotation = createDescriptorForUnconditionalOverrideAnnotation(); private final LanguageConceptSwitch myConceptIndex; public StructureAspectDescriptor() { myConceptIndex = new LanguageConceptSwitch(); } @Override public Collection<ConceptDescriptor> getDescriptors() { return Arrays.asList(myConceptErrorType, myConceptOverrideAnnotation, myConceptOverridingPrimFloatType, myConceptOverridingPrimIntType, myConceptOverridingPrimNumConstant, myConceptUnconditionalOverrideAnnotation); } @Override @Nullable public ConceptDescriptor getDescriptor(SConceptId id) { switch (myConceptIndex.index(id)) { case LanguageConceptSwitch.ErrorType: return myConceptErrorType; case LanguageConceptSwitch.OverrideAnnotation: return myConceptOverrideAnnotation; case LanguageConceptSwitch.OverridingPrimFloatType: return myConceptOverridingPrimFloatType; case LanguageConceptSwitch.OverridingPrimIntType: return myConceptOverridingPrimIntType; case LanguageConceptSwitch.OverridingPrimNumConstant: return myConceptOverridingPrimNumConstant; case LanguageConceptSwitch.UnconditionalOverrideAnnotation: return myConceptUnconditionalOverrideAnnotation; default: return null; } } /*package*/ int internalIndex(SAbstractConcept c) { return myConceptIndex.index(c); } private static ConceptDescriptor createDescriptorForErrorType() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("testOverridingType", "ErrorType", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x19f3ac4f6f2a7f40L); b.class_(false, false, false); b.super_("testAnnotatedType.structure.PrimType", 0x2f74e72e3e3d480eL, 0xbae1cc709d588366L, 0x58e32a0782beb1bcL); b.origin("r:b840b070-fa0a-4e7f-8980-8fcd6f3fd146(testOverridingType.structure)/1870027727456337728"); b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL); b.alias("error"); return b.create(); } private static ConceptDescriptor createDescriptorForOverrideAnnotation() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("testOverridingType", "OverrideAnnotation", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x391548fac32006d4L); b.class_(false, false, false); b.super_("jetbrains.mps.lang.core.structure.NodeAttribute", 0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da54L); b.origin("r:b840b070-fa0a-4e7f-8980-8fcd6f3fd146(testOverridingType.structure)/4113274076525496020"); b.aggregate("substitute", 0x58e32a0782beb1baL).target(0x2f74e72e3e3d480eL, 0xbae1cc709d588366L, 0x58e32a0782beb1bcL).optional(false).ordered(true).multiple(false).origin("6405009306797650362").done(); b.aggregate("condition", 0x58e32a0782beb1c4L).target(0x2f74e72e3e3d480eL, 0xbae1cc709d588366L, 0x58e32a0782beb1c7L).optional(false).ordered(true).multiple(false).origin("6405009306797650372").done(); return b.create(); } private static ConceptDescriptor createDescriptorForOverridingPrimFloatType() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("testOverridingType", "OverridingPrimFloatType", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x5b362c13a4993604L); b.class_(false, false, false); b.super_("testAnnotatedType.structure.PrimFloatType", 0x2f74e72e3e3d480eL, 0xbae1cc709d588366L, 0x58e32a0782beb1bdL); b.origin("r:b840b070-fa0a-4e7f-8980-8fcd6f3fd146(testOverridingType.structure)/6572489169071322628"); b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL); b.alias("_float_overridden"); return b.create(); } private static ConceptDescriptor createDescriptorForOverridingPrimIntType() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("testOverridingType", "OverridingPrimIntType", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x5b362c13a49935f1L); b.class_(false, false, false); b.super_("testAnnotatedType.structure.PrimIntType", 0x2f74e72e3e3d480eL, 0xbae1cc709d588366L, 0x58e32a0782be609eL); b.origin("r:b840b070-fa0a-4e7f-8980-8fcd6f3fd146(testOverridingType.structure)/6572489169071322609"); b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL); b.alias("_int_overridden"); return b.create(); } private static ConceptDescriptor createDescriptorForOverridingPrimNumConstant() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("testOverridingType", "OverridingPrimNumConstant", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x5b362c13a4988795L); b.class_(false, false, false); b.super_("testAnnotatedType.structure.PrimNumConstant", 0x2f74e72e3e3d480eL, 0xbae1cc709d588366L, 0x1469c391a09a5eefL); b.origin("r:b840b070-fa0a-4e7f-8980-8fcd6f3fd146(testOverridingType.structure)/6572489169071277973"); b.prop("isOverriding", 0x5b362c13a498895bL, "6572489169071278427"); return b.create(); } private static ConceptDescriptor createDescriptorForUnconditionalOverrideAnnotation() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("testOverridingType", "UnconditionalOverrideAnnotation", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x19f3ac4f6f2a050aL); b.class_(false, false, false); b.super_("testOverridingType.structure.OverrideAnnotation", 0x394e385732564e8bL, 0x96015abe7ad354d9L, 0x391548fac32006d4L); b.origin("r:b840b070-fa0a-4e7f-8980-8fcd6f3fd146(testOverridingType.structure)/1870027727456306442"); return b.create(); } }