package jetbrains.mps.lang.aspect.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 myConceptAspectMethodDescriptor = createDescriptorForAspectMethodDescriptor();
/*package*/ final ConceptDescriptor myConceptGenerationDescriptor = createDescriptorForGenerationDescriptor();
/*package*/ final ConceptDescriptor myConceptGenerationDescriptor_ByInterface = createDescriptorForGenerationDescriptor_ByInterface();
/*package*/ final ConceptDescriptor myConceptGenerationDescriptor_Class = createDescriptorForGenerationDescriptor_Class();
/*package*/ final ConceptDescriptor myConceptHelpURL = createDescriptorForHelpURL();
/*package*/ final ConceptDescriptor myConceptIAspectConcept = createDescriptorForIAspectConcept();
/*package*/ final ConceptDescriptor myConceptLanguageAspectDescriptor = createDescriptorForLanguageAspectDescriptor();
/*package*/ final ConceptDescriptor myConceptLanguageReference = createDescriptorForLanguageReference();
/*package*/ final ConceptDescriptor myConceptSimpleAspectOrderRef = createDescriptorForSimpleAspectOrderRef();
/*package*/ final ConceptDescriptor myConceptSimpleLanguageAspectDescriptor = createDescriptorForSimpleLanguageAspectDescriptor();
private final LanguageConceptSwitch myConceptIndex;
public StructureAspectDescriptor() {
myConceptIndex = new LanguageConceptSwitch();
}
@Override
public Collection<ConceptDescriptor> getDescriptors() {
return Arrays.asList(myConceptAspectMethodDescriptor, myConceptGenerationDescriptor, myConceptGenerationDescriptor_ByInterface, myConceptGenerationDescriptor_Class, myConceptHelpURL, myConceptIAspectConcept, myConceptLanguageAspectDescriptor, myConceptLanguageReference, myConceptSimpleAspectOrderRef, myConceptSimpleLanguageAspectDescriptor);
}
@Override
@Nullable
public ConceptDescriptor getDescriptor(SConceptId id) {
switch (myConceptIndex.index(id)) {
case LanguageConceptSwitch.AspectMethodDescriptor:
return myConceptAspectMethodDescriptor;
case LanguageConceptSwitch.GenerationDescriptor:
return myConceptGenerationDescriptor;
case LanguageConceptSwitch.GenerationDescriptor_ByInterface:
return myConceptGenerationDescriptor_ByInterface;
case LanguageConceptSwitch.GenerationDescriptor_Class:
return myConceptGenerationDescriptor_Class;
case LanguageConceptSwitch.HelpURL:
return myConceptHelpURL;
case LanguageConceptSwitch.IAspectConcept:
return myConceptIAspectConcept;
case LanguageConceptSwitch.LanguageAspectDescriptor:
return myConceptLanguageAspectDescriptor;
case LanguageConceptSwitch.LanguageReference:
return myConceptLanguageReference;
case LanguageConceptSwitch.SimpleAspectOrderRef:
return myConceptSimpleAspectOrderRef;
case LanguageConceptSwitch.SimpleLanguageAspectDescriptor:
return myConceptSimpleLanguageAspectDescriptor;
default:
return null;
}
}
/*package*/ int internalIndex(SAbstractConcept c) {
return myConceptIndex.index(c);
}
private static ConceptDescriptor createDescriptorForAspectMethodDescriptor() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "AspectMethodDescriptor", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x4ac0e6949ea3f2b0L);
b.class_(false, false, false);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/5386558680326206128");
b.associate("method", 0x4ac0e6949ea3f2b1L).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x6c6b6a1e379f9408L).optional(false).origin("5386558680326206129").done();
b.associate("cncpt", 0x4ac0e6949ea3f2b9L).target(0xc72da2b97cce4447L, 0x8389f407dc1158b7L, 0x1103553c5ffL).optional(false).origin("5386558680326206137").done();
b.aggregate("baseConceptFunc", 0x4ac0e6949ea3f2b4L).target(0xfd3920347849419dL, 0x907112563d152375L, 0x1174bed3125L).optional(true).ordered(true).multiple(false).origin("5386558680326206132").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForGenerationDescriptor() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "GenerationDescriptor", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x5c6b2d0d258655f8L);
b.class_(false, true, false);
b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x11a3afa8c0dL);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/6659466008484795896");
b.associate("mainIntfcClass", 0x7ce2ed69c7e7de33L).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x101d9d3ca30L).optional(false).origin("8999016044020882995").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForGenerationDescriptor_ByInterface() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "GenerationDescriptor_ByInterface", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x4ac0e6949ea3f2abL);
b.class_(false, false, false);
b.super_("jetbrains.mps.lang.aspect.structure.GenerationDescriptor", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x5c6b2d0d258655f8L);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/5386558680326206123");
b.aggregate("methods", 0x4ac0e6949ea3f2adL).target(0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x4ac0e6949ea3f2b0L).optional(false).ordered(true).multiple(true).origin("5386558680326206125").done();
b.alias("descriptor generator");
return b.create();
}
private static ConceptDescriptor createDescriptorForGenerationDescriptor_Class() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "GenerationDescriptor_Class", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x5c2c36f4ea0d3b2fL);
b.class_(false, false, false);
b.super_("jetbrains.mps.lang.aspect.structure.GenerationDescriptor", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x5c6b2d0d258655f8L);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/6641743975991294767");
b.associate("implTemplate", 0x5921e5e41155f7ddL).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c108ca66L).optional(false).origin("6422667311313188829").done();
b.alias("generate descriptor instantiation only");
return b.create();
}
private static ConceptDescriptor createDescriptorForHelpURL() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "HelpURL", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x47d8f9811b73d397L);
b.class_(false, false, false);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/5177162104569058199");
b.prop("url", 0x47d8f9811b73d398L, "5177162104569058200");
return b.create();
}
private static ConceptDescriptor createDescriptorForIAspectConcept() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "IAspectConcept", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x7bcf8452e0dac0c9L);
b.interface_();
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/8921494878338859209");
return b.create();
}
private static ConceptDescriptor createDescriptorForLanguageAspectDescriptor() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "LanguageAspectDescriptor", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x2d72cdccef70b086L);
b.class_(false, false, false);
b.super_("jetbrains.mps.baseLanguage.structure.ClassConcept", 0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c108ca66L);
b.parent(0xc7d5b9dda05f4be2L, 0xbc73f2e16994cc67L, 0xea740fb893a13edL);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/3274906159125934214");
b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
return b.create();
}
private static ConceptDescriptor createDescriptorForLanguageReference() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "LanguageReference", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x2fa4a8cdf0c9c87aL);
b.class_(false, false, false);
b.super_("jetbrains.mps.lang.smodel.structure.LanguageRefExpression", 0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, 0x3e6a40ba27dd70f3L);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/3433054418424678522");
return b.create();
}
private static ConceptDescriptor createDescriptorForSimpleAspectOrderRef() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "SimpleAspectOrderRef", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x26c6e1a7a20d8efL);
b.class_(false, false, false);
b.super_("jetbrains.mps.lang.util.order.structure.OrderParticipantReference", 0xc9d137c4325944f8L, 0x80ff33ab2b506ee4L, 0x22035699bdd7814bL);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/174635545557784815");
return b.create();
}
private static ConceptDescriptor createDescriptorForSimpleLanguageAspectDescriptor() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.aspect", "SimpleLanguageAspectDescriptor", 0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x2fa4a8cdf0c9b076L);
b.class_(false, false, true);
b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x11a3afa8c0dL);
b.parent(0xc9d137c4325944f8L, 0x80ff33ab2b506ee4L, 0x2085244dcb20c1dcL);
b.origin("r:2ea71bfd-fe13-4525-9346-023b05757b39(jetbrains.mps.lang.aspect.structure)/3433054418424672374");
b.prop("helpUrl", 0x2fa4a8cdf0c9b099L, "3433054418424672409");
b.aggregate("oldMainLanguages", 0x2fa4a8cdf0c9b094L).target(0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x2fa4a8cdf0c9c87aL).optional(true).ordered(true).multiple(true).origin("3433054418424672404").done();
b.aggregate("oldAdditionalLanguages", 0x2fa4a8cdf0c9b096L).target(0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x2fa4a8cdf0c9c87aL).optional(true).ordered(true).multiple(true).origin("3433054418424672406").done();
b.aggregate("mainLanguages", 0x54be5be5620c1b77L).target(0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, 0x500fe561b6da3df1L).optional(false).ordered(true).multiple(true).origin("6106419185511570295").done();
b.aggregate("additionalLanguages", 0x54be5be5620c1b7dL).target(0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, 0x500fe561b6da3df1L).optional(true).ordered(true).multiple(true).origin("6106419185511570301").done();
b.aggregate("icon", 0x2fa4a8cdf0cff495L).target(0x982eb8df2c964bd7L, 0x996311712ea622e5L, 0x7c8b08a50a39c6bbL).optional(true).ordered(true).multiple(false).origin("3433054418425083029").done();
b.aggregate("httpHelpUrl", 0x47d8f9811b759b89L).target(0xf159adf43c9340f9L, 0x9c5a1f245a8697afL, 0x47d8f9811b73d397L).optional(true).ordered(true).multiple(false).origin("5177162104569174921").done();
b.aggregate("order", 0x2085244dcb121e81L).target(0xc9d137c4325944f8L, 0x80ff33ab2b506ee4L, 0x22035699bdd78145L).optional(true).ordered(true).multiple(false).origin("2343319097654255233").done();
return b.create();
}
}