package jetbrains.mps.samples.mindmaps.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 myConceptCoreThrought = createDescriptorForCoreThrought();
/*package*/ final ConceptDescriptor myConceptMindMap = createDescriptorForMindMap();
/*package*/ final ConceptDescriptor myConceptRelationship = createDescriptorForRelationship();
/*package*/ final ConceptDescriptor myConceptSpecializes = createDescriptorForSpecializes();
/*package*/ final ConceptDescriptor myConceptThought = createDescriptorForThought();
/*package*/ final ConceptDescriptor myConceptVisualBox = createDescriptorForVisualBox();
private final LanguageConceptSwitch myConceptIndex;
public StructureAspectDescriptor() {
myConceptIndex = new LanguageConceptSwitch();
}
@Override
public Collection<ConceptDescriptor> getDescriptors() {
return Arrays.asList(myConceptCoreThrought, myConceptMindMap, myConceptRelationship, myConceptSpecializes, myConceptThought, myConceptVisualBox);
}
@Override
@Nullable
public ConceptDescriptor getDescriptor(SConceptId id) {
switch (myConceptIndex.index(id)) {
case LanguageConceptSwitch.CoreThrought:
return myConceptCoreThrought;
case LanguageConceptSwitch.MindMap:
return myConceptMindMap;
case LanguageConceptSwitch.Relationship:
return myConceptRelationship;
case LanguageConceptSwitch.Specializes:
return myConceptSpecializes;
case LanguageConceptSwitch.Thought:
return myConceptThought;
case LanguageConceptSwitch.VisualBox:
return myConceptVisualBox;
default:
return null;
}
}
/*package*/ int internalIndex(SAbstractConcept c) {
return myConceptIndex.index(c);
}
private static ConceptDescriptor createDescriptorForCoreThrought() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.mindmaps", "CoreThrought", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x46337bb59bbce054L);
b.class_(false, false, false);
b.super_("jetbrains.mps.samples.mindmaps.structure.Thought", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bac8L);
b.origin("r:c21673e4-6a17-4077-8632-3ea58685019b(jetbrains.mps.samples.mindmaps.structure)/5058522826399342676");
b.alias("core thought");
return b.create();
}
private static ConceptDescriptor createDescriptorForMindMap() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.mindmaps", "MindMap", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14758fL);
b.class_(false, false, true);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.origin("r:c21673e4-6a17-4077-8632-3ea58685019b(jetbrains.mps.samples.mindmaps.structure)/79242395703866767");
b.aggregate("thoughts", 0x1198689ff14c5d6L).target(0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bac8L).optional(true).ordered(true).multiple(true).origin("79242395703887318").done();
b.aggregate("relationships", 0x1198689ff14c5dbL).target(0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bad3L).optional(true).ordered(true).multiple(true).origin("79242395703887323").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForRelationship() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.mindmaps", "Relationship", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bad3L);
b.class_(false, false, false);
b.origin("r:c21673e4-6a17-4077-8632-3ea58685019b(jetbrains.mps.samples.mindmaps.structure)/79242395703884499");
b.associate("source", 0x517b79625769ba9eL).target(0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bac8L).optional(false).origin("5871420002487876254").done();
b.associate("target", 0x1198689ff14c5dfL).target(0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bac8L).optional(false).origin("79242395703887327").done();
b.alias("relationship");
return b.create();
}
private static ConceptDescriptor createDescriptorForSpecializes() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.mindmaps", "Specializes", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x46337bb59bbba841L);
b.class_(false, false, false);
b.super_("jetbrains.mps.samples.mindmaps.structure.Relationship", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bad3L);
b.origin("r:c21673e4-6a17-4077-8632-3ea58685019b(jetbrains.mps.samples.mindmaps.structure)/5058522826399262785");
return b.create();
}
private static ConceptDescriptor createDescriptorForThought() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.mindmaps", "Thought", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff14bac8L);
b.class_(false, false, false);
b.super_("jetbrains.mps.samples.mindmaps.structure.VisualBox", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff15ca26L);
b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
b.origin("r:c21673e4-6a17-4077-8632-3ea58685019b(jetbrains.mps.samples.mindmaps.structure)/79242395703884488");
b.alias("thought");
return b.create();
}
private static ConceptDescriptor createDescriptorForVisualBox() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.mindmaps", "VisualBox", 0x33f294fd370a4a40L, 0x999b43f382910018L, 0x1198689ff15ca26L);
b.class_(false, true, false);
b.origin("r:c21673e4-6a17-4077-8632-3ea58685019b(jetbrains.mps.samples.mindmaps.structure)/79242395703953958");
b.prop("x", 0x1198689ff15ca27L, "79242395703953959");
b.prop("y", 0x1198689ff15ca29L, "79242395703953961");
b.prop("myIsClicked", 0x517b79625760f822L, "5871420002487302178");
return b.create();
}
}