package jetbrains.mps.transformation.test.inputLang.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 myConceptExpressionToReduceToStatement = createDescriptorForExpressionToReduceToStatement();
/*package*/ final ConceptDescriptor myConceptInputNode = createDescriptorForInputNode();
/*package*/ final ConceptDescriptor myConceptInputNode_A = createDescriptorForInputNode_A();
/*package*/ final ConceptDescriptor myConceptInputNode_B = createDescriptorForInputNode_B();
/*package*/ final ConceptDescriptor myConceptInputNode_C = createDescriptorForInputNode_C();
/*package*/ final ConceptDescriptor myConceptInputRoot = createDescriptorForInputRoot();
/*package*/ final ConceptDescriptor myConceptInputRootWithStatementList = createDescriptorForInputRootWithStatementList();
/*package*/ final ConceptDescriptor myConceptRefTestClass = createDescriptorForRefTestClass();
/*package*/ final ConceptDescriptor myConceptRefTestExpression = createDescriptorForRefTestExpression();
/*package*/ final ConceptDescriptor myConceptRefTestMethod = createDescriptorForRefTestMethod();
/*package*/ final ConceptDescriptor myConceptRefTestMethodCall = createDescriptorForRefTestMethodCall();
/*package*/ final ConceptDescriptor myConceptRefTestParam = createDescriptorForRefTestParam();
/*package*/ final ConceptDescriptor myConceptRefTestParamRef = createDescriptorForRefTestParamRef();
private final LanguageConceptSwitch myConceptIndex;
public StructureAspectDescriptor() {
myConceptIndex = new LanguageConceptSwitch();
}
@Override
public Collection<ConceptDescriptor> getDescriptors() {
return Arrays.asList(myConceptExpressionToReduceToStatement, myConceptInputNode, myConceptInputNode_A, myConceptInputNode_B, myConceptInputNode_C, myConceptInputRoot, myConceptInputRootWithStatementList, myConceptRefTestClass, myConceptRefTestExpression, myConceptRefTestMethod, myConceptRefTestMethodCall, myConceptRefTestParam, myConceptRefTestParamRef);
}
@Override
@Nullable
public ConceptDescriptor getDescriptor(SConceptId id) {
switch (myConceptIndex.index(id)) {
case LanguageConceptSwitch.ExpressionToReduceToStatement:
return myConceptExpressionToReduceToStatement;
case LanguageConceptSwitch.InputNode:
return myConceptInputNode;
case LanguageConceptSwitch.InputNode_A:
return myConceptInputNode_A;
case LanguageConceptSwitch.InputNode_B:
return myConceptInputNode_B;
case LanguageConceptSwitch.InputNode_C:
return myConceptInputNode_C;
case LanguageConceptSwitch.InputRoot:
return myConceptInputRoot;
case LanguageConceptSwitch.InputRootWithStatementList:
return myConceptInputRootWithStatementList;
case LanguageConceptSwitch.RefTestClass:
return myConceptRefTestClass;
case LanguageConceptSwitch.RefTestExpression:
return myConceptRefTestExpression;
case LanguageConceptSwitch.RefTestMethod:
return myConceptRefTestMethod;
case LanguageConceptSwitch.RefTestMethodCall:
return myConceptRefTestMethodCall;
case LanguageConceptSwitch.RefTestParam:
return myConceptRefTestParam;
case LanguageConceptSwitch.RefTestParamRef:
return myConceptRefTestParamRef;
default:
return null;
}
}
/*package*/ int internalIndex(SAbstractConcept c) {
return myConceptIndex.index(c);
}
private static ConceptDescriptor createDescriptorForExpressionToReduceToStatement() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "ExpressionToReduceToStatement", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11986c01fc7L);
b.class_(false, false, false);
b.super_("jetbrains.mps.baseLanguage.structure.Expression", 0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1209146548167");
b.kind(ConceptKind.NORMAL, StaticScope.NONE);
b.alias("expression to reduce to statement");
return b.create();
}
private static ConceptDescriptor createDescriptorForInputNode() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "InputNode", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645a1114eL);
b.class_(false, true, false);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1195169091918");
b.aggregate("inputChild", 0x117ebec4674L).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645a1114eL).optional(true).ordered(true).multiple(true).origin("1202254005876").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForInputNode_A() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "InputNode_A", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645be5a7aL);
b.class_(false, false, false);
b.super_("jetbrains.mps.transformation.test.inputLang.structure.InputNode", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645a1114eL);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1195171011194");
b.prop("option", 0x11645bf6873L, "1195171080307");
return b.create();
}
private static ConceptDescriptor createDescriptorForInputNode_B() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "InputNode_B", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x118e69cb58aL);
b.class_(false, false, false);
b.super_("jetbrains.mps.transformation.test.inputLang.structure.InputNode_A", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645be5a7aL);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1206459872650");
return b.create();
}
private static ConceptDescriptor createDescriptorForInputNode_C() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "InputNode_C", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x118e6cad46aL);
b.class_(false, false, false);
b.super_("jetbrains.mps.transformation.test.inputLang.structure.InputNode_B", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x118e69cb58aL);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1206462895210");
b.prop("key", 0x44696d5abe089ec8L, "4929591503636438728");
return b.create();
}
private static ConceptDescriptor createDescriptorForInputRoot() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "InputRoot", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645953ab3L);
b.class_(false, false, true);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1195168316083");
b.prop("useInTest", 0x117eb48fdf5L, "1202243304949");
b.aggregate("inputChild", 0x11645abf534L).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11645a1114eL).optional(true).ordered(true).multiple(true).origin("1195169805620").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForInputRootWithStatementList() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "InputRootWithStatementList", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x11986ebf992L);
b.class_(false, false, true);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/1209149421970");
b.prop("useInTest", 0x11986ed1901L, "1209149495553");
b.aggregate("statementList", 0x11986ec6379L).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8cc56b200L).optional(false).ordered(true).multiple(false).origin("1209149449081").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForRefTestClass() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "RefTestClass", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995dfbL);
b.class_(false, false, true);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x33d23ee961a0cbf3L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/3315811491560119803");
b.associate("extends", 0x2e0420fbd0995dfdL).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995dfbL).optional(true).origin("3315811491560119805").done();
b.aggregate("methods", 0x2e0420fbd0995e26L).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995dfeL).optional(true).ordered(true).multiple(true).origin("3315811491560119846").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForRefTestExpression() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "RefTestExpression", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e01L);
b.class_(false, true, false);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/3315811491560119809");
return b.create();
}
private static ConceptDescriptor createDescriptorForRefTestMethod() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "RefTestMethod", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995dfeL);
b.class_(false, false, false);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x33d23ee961a0cbf3L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/3315811491560119806");
b.aggregate("params", 0x2e0420fbd0995e40L).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e00L).optional(true).ordered(true).multiple(true).origin("3315811491560119872").done();
b.aggregate("expressions", 0x2e0420fbd0995e05L).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e01L).optional(true).ordered(true).multiple(true).origin("3315811491560119813").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForRefTestMethodCall() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "RefTestMethodCall", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e09L);
b.class_(false, false, false);
b.super_("jetbrains.mps.transformation.test.inputLang.structure.RefTestExpression", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e01L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/3315811491560119817");
b.associate("method", 0x2e0420fbd0995e0aL).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995dfeL).optional(false).origin("3315811491560119818").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForRefTestParam() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "RefTestParam", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e00L);
b.class_(false, false, false);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/3315811491560119808");
return b.create();
}
private static ConceptDescriptor createDescriptorForRefTestParamRef() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.transformation.test.inputLang", "RefTestParamRef", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e07L);
b.class_(false, false, false);
b.super_("jetbrains.mps.transformation.test.inputLang.structure.RefTestExpression", 0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e01L);
b.origin("r:00000000-0000-4000-0000-011c895905f4(jetbrains.mps.transformation.test.inputLang.structure)/3315811491560119815");
b.associate("declaration", 0x2e0420fbd0995e08L).target(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, 0x2e0420fbd0995e00L).optional(false).origin("3315811491560119816").done();
return b.create();
}
}