package jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts.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 myConceptDeletedAbstractChild = createDescriptorForDeletedAbstractChild();
/*package*/ final ConceptDescriptor myConceptDeletedChild = createDescriptorForDeletedChild();
/*package*/ final ConceptDescriptor myConceptDeletedParent = createDescriptorForDeletedParent();
/*package*/ final ConceptDescriptor myConceptDeletedParentContainer = createDescriptorForDeletedParentContainer();
private final LanguageConceptSwitch myConceptIndex;
public StructureAspectDescriptor() {
myConceptIndex = new LanguageConceptSwitch();
}
@Override
public Collection<ConceptDescriptor> getDescriptors() {
return Arrays.asList(myConceptDeletedAbstractChild, myConceptDeletedChild, myConceptDeletedParent, myConceptDeletedParentContainer);
}
@Override
@Nullable
public ConceptDescriptor getDescriptor(SConceptId id) {
switch (myConceptIndex.index(id)) {
case LanguageConceptSwitch.DeletedAbstractChild:
return myConceptDeletedAbstractChild;
case LanguageConceptSwitch.DeletedChild:
return myConceptDeletedChild;
case LanguageConceptSwitch.DeletedParent:
return myConceptDeletedParent;
case LanguageConceptSwitch.DeletedParentContainer:
return myConceptDeletedParentContainer;
default:
return null;
}
}
/*package*/ int internalIndex(SAbstractConcept c) {
return myConceptIndex.index(c);
}
private static ConceptDescriptor createDescriptorForDeletedAbstractChild() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts", "DeletedAbstractChild", 0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x19896b9a4f67ba8fL);
b.class_(false, true, false);
b.origin("r:f7ab8cfc-135f-4339-bd76-ff57cf78dd74(jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts.structure)/1840120233258891919");
return b.create();
}
private static ConceptDescriptor createDescriptorForDeletedChild() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts", "DeletedChild", 0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x3620abce1452aa4fL);
b.class_(false, false, false);
b.origin("r:f7ab8cfc-135f-4339-bd76-ff57cf78dd74(jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts.structure)/3900306178895424079");
return b.create();
}
private static ConceptDescriptor createDescriptorForDeletedParent() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts", "DeletedParent", 0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x3620abce1451d7feL);
b.class_(false, false, false);
b.origin("r:f7ab8cfc-135f-4339-bd76-ff57cf78dd74(jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts.structure)/3900306178895370238");
b.prop("name", 0x3620abce1452aa52L, "3900306178895424082");
b.associate("deletedParentReference", 0x3620abce1452aa54L).target(0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x3620abce1451d7feL).optional(true).origin("3900306178895424084").done();
b.aggregate("deletedChild", 0x3620abce1452aa50L).target(0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x3620abce1452aa4fL).optional(false).ordered(true).multiple(false).origin("3900306178895424080").done();
b.aggregate("abstractDeletedChild", 0x2ec5f83c162e472aL).target(0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x19896b9a4f67ba8fL).optional(false).ordered(true).multiple(false).origin("3370372833110542122").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForDeletedParentContainer() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts", "DeletedParentContainer", 0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x3620abce1452aa4cL);
b.class_(false, false, false);
b.origin("r:f7ab8cfc-135f-4339-bd76-ff57cf78dd74(jetbrains.mps.lang.editor.testDefaultEditor.languageForDeletedConcepts.structure)/3900306178895424076");
b.aggregate("deletedParent", 0x3620abce1452aa4dL).target(0xd8e56c33e3084c18L, 0xbe6a751cd5d3c5ceL, 0x3620abce1451d7feL).optional(true).ordered(true).multiple(false).origin("3900306178895424077").done();
return b.create();
}
}