package jetbrains.mps.lang.migration.util.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 myConceptStepData = createDescriptorForStepData();
/*package*/ final ConceptDescriptor myConceptStringData = createDescriptorForStringData();
private final LanguageConceptSwitch myConceptIndex;
public StructureAspectDescriptor() {
myConceptIndex = new LanguageConceptSwitch();
}
@Override
public Collection<ConceptDescriptor> getDescriptors() {
return Arrays.asList(myConceptStepData, myConceptStringData);
}
@Override
@Nullable
public ConceptDescriptor getDescriptor(SConceptId id) {
switch (myConceptIndex.index(id)) {
case LanguageConceptSwitch.StepData:
return myConceptStepData;
case LanguageConceptSwitch.StringData:
return myConceptStringData;
default:
return null;
}
}
/*package*/ int internalIndex(SAbstractConcept c) {
return myConceptIndex.index(c);
}
private static ConceptDescriptor createDescriptorForStepData() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.migration.util", "StepData", 0x9882f4ad195546feL, 0x826994189e5dbbf2L, 0x66eed171c5f82709L);
b.class_(false, false, true);
b.origin("9882f4ad-1955-46fe-8269-94189e5dbbf2/r:f3afda2a-1e73-443b-8e74-2e4c43867b70(jetbrains.mps.lang.migration.util/jetbrains.mps.lang.migration.util.structure)/7417095922908669705");
b.prop("script", 0x1b62b551c10bc5f4L, "1973338949477451252");
b.aggregate("data", 0x66eed171c5f90226L).target(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x10802efe25aL).optional(false).ordered(true).multiple(false).origin("7417095922908725798").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForStringData() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.lang.migration.util", "StringData", 0x9882f4ad195546feL, 0x826994189e5dbbf2L, 0x2c90e78b233c3efeL);
b.class_(false, false, false);
b.origin("9882f4ad-1955-46fe-8269-94189e5dbbf2/r:f3afda2a-1e73-443b-8e74-2e4c43867b70(jetbrains.mps.lang.migration.util/jetbrains.mps.lang.migration.util.structure)/3211321119092784894");
b.prop("data", 0x2c90e78b233c3f0aL, "3211321119092784906");
return b.create();
}
}