package jetbrains.mps.samples.StateChart.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 myConceptChartOperation = createDescriptorForChartOperation(); /*package*/ final ConceptDescriptor myConceptEmptyOperation = createDescriptorForEmptyOperation(); /*package*/ final ConceptDescriptor myConceptEvent = createDescriptorForEvent(); /*package*/ final ConceptDescriptor myConceptLog = createDescriptorForLog(); /*package*/ final ConceptDescriptor myConceptOperationsList = createDescriptorForOperationsList(); /*package*/ final ConceptDescriptor myConceptRaise = createDescriptorForRaise(); /*package*/ final ConceptDescriptor myConceptState = createDescriptorForState(); /*package*/ final ConceptDescriptor myConceptStateChart = createDescriptorForStateChart(); /*package*/ final ConceptDescriptor myConceptTransition = createDescriptorForTransition(); private final LanguageConceptSwitch myConceptIndex; public StructureAspectDescriptor() { myConceptIndex = new LanguageConceptSwitch(); } @Override public Collection<ConceptDescriptor> getDescriptors() { return Arrays.asList(myConceptChartOperation, myConceptEmptyOperation, myConceptEvent, myConceptLog, myConceptOperationsList, myConceptRaise, myConceptState, myConceptStateChart, myConceptTransition); } @Override @Nullable public ConceptDescriptor getDescriptor(SConceptId id) { switch (myConceptIndex.index(id)) { case LanguageConceptSwitch.ChartOperation: return myConceptChartOperation; case LanguageConceptSwitch.EmptyOperation: return myConceptEmptyOperation; case LanguageConceptSwitch.Event: return myConceptEvent; case LanguageConceptSwitch.Log: return myConceptLog; case LanguageConceptSwitch.OperationsList: return myConceptOperationsList; case LanguageConceptSwitch.Raise: return myConceptRaise; case LanguageConceptSwitch.State: return myConceptState; case LanguageConceptSwitch.StateChart: return myConceptStateChart; case LanguageConceptSwitch.Transition: return myConceptTransition; default: return null; } } /*package*/ int internalIndex(SAbstractConcept c) { return myConceptIndex.index(c); } private static ConceptDescriptor createDescriptorForChartOperation() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "ChartOperation", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a37L); b.class_(false, true, false); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/6813679070097861175"); return b.create(); } private static ConceptDescriptor createDescriptorForEmptyOperation() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "EmptyOperation", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26aecL); b.class_(false, false, false); b.super_("jetbrains.mps.samples.StateChart.structure.ChartOperation", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a37L); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/6813679070097861356"); b.alias("<empty>"); return b.create(); } private static ConceptDescriptor createDescriptorForEvent() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "Event", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a3L); b.class_(false, false, false); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/1480846759627646115"); b.alias("event"); return b.create(); } private static ConceptDescriptor createDescriptorForLog() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "Log", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a92L); b.class_(false, false, false); b.super_("jetbrains.mps.samples.StateChart.structure.ChartOperation", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a37L); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/6813679070097861266"); b.prop("value", 0x5e8f0d038ab26a93L, "6813679070097861267"); b.alias("log"); return b.create(); } private static ConceptDescriptor createDescriptorForOperationsList() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "OperationsList", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26ac1L); b.class_(false, false, false); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/6813679070097861313"); b.aggregate("operations", 0x5e8f0d038ab26ac2L).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a37L).optional(true).ordered(true).multiple(true).origin("6813679070097861314").done(); return b.create(); } private static ConceptDescriptor createDescriptorForRaise() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "Raise", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a70L); b.class_(false, false, false); b.super_("jetbrains.mps.samples.StateChart.structure.ChartOperation", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26a37L); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/6813679070097861232"); b.associate("event", 0x5e8f0d038ab26a71L).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a3L).optional(false).origin("6813679070097861233").done(); b.alias("raise"); return b.create(); } private static ConceptDescriptor createDescriptorForState() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "State", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a6L); b.class_(false, false, false); b.super_("jetbrains.mps.samples.StateChart.structure.StateChart", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e46aL); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/1480846759627646118"); b.prop("isInitial", 0x148d064832658c3eL, "1480846759627689022"); b.prop("isFinal", 0x148d064832668aabL, "1480846759627754155"); b.aggregate("transitions", 0x148d06483264e4afL).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a9L).optional(true).ordered(true).multiple(true).origin("1480846759627646127").done(); b.aggregate("onEntry", 0x5e8f0d038ab691b5L).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26ac1L).optional(false).ordered(true).multiple(false).origin("6813679070098133429").done(); b.aggregate("onExit", 0x5e8f0d038ab691caL).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26ac1L).optional(false).ordered(true).multiple(false).origin("6813679070098133450").done(); b.alias("state"); return b.create(); } private static ConceptDescriptor createDescriptorForStateChart() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "StateChart", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e46aL); b.class_(false, false, true); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x33d23ee961a0cbf3L); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/1480846759627646058"); b.aggregate("triggers", 0x148d06483264e4b1L).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a3L).optional(true).ordered(true).multiple(true).origin("1480846759627646129").done(); b.aggregate("states", 0x148d06483264e4b3L).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a6L).optional(true).ordered(true).multiple(true).origin("1480846759627646131").done(); b.alias("state chart"); return b.create(); } private static ConceptDescriptor createDescriptorForTransition() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.StateChart", "Transition", 0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a9L); b.class_(false, false, false); b.origin("r:89aa1fb5-b463-4059-be0d-fc7ef188f902(jetbrains.mps.samples.StateChart.structure)/1480846759627646121"); b.associate("trigger", 0x148d06483264e4aaL).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a3L).optional(false).origin("1480846759627646122").done(); b.associate("target", 0x148d06483264e4acL).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x148d06483264e4a6L).optional(false).origin("1480846759627646124").done(); b.aggregate("onTransit", 0x5e8f0d038ab3c886L).target(0xc3b0572e7f864ac7L, 0xac44ef15dc8f5c15L, 0x5e8f0d038ab26ac1L).optional(false).ordered(true).multiple(false).origin("6813679070097950854").done(); b.alias("transition"); return b.create(); } }