package jetbrains.mps.lang.extension.structure;
/*Generated by MPS */
import jetbrains.mps.smodel.runtime.ConceptPresentationAspectBase;
import jetbrains.mps.smodel.runtime.ConceptPresentation;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.smodel.runtime.ConceptPresentationBuilder;
public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase {
private ConceptPresentation props_Extension;
private ConceptPresentation props_ExtensionDeclaration;
private ConceptPresentation props_ExtensionFieldDeclaration;
private ConceptPresentation props_ExtensionFieldReference;
private ConceptPresentation props_ExtensionFunction;
private ConceptPresentation props_ExtensionObjectGetter;
private ConceptPresentation props_ExtensionPointDeclaration;
private ConceptPresentation props_ExtensionPointExpression;
private ConceptPresentation props_ExtensionPointType;
private ConceptPresentation props_GetExtensionObjectsOperation;
private ConceptPresentation props_IRootWithUniqueName;
@Override
@Nullable
public ConceptPresentation getDescriptor(SAbstractConcept c) {
StructureAspectDescriptor structureDescriptor = (StructureAspectDescriptor) myLanguageRuntime.getAspect(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.class);
switch (structureDescriptor.internalIndex(c)) {
case LanguageConceptSwitch.Extension:
if (props_Extension == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_Extension = cpb.create();
}
return props_Extension;
case LanguageConceptSwitch.ExtensionDeclaration:
if (props_ExtensionDeclaration == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.deprecated(true);
props_ExtensionDeclaration = cpb.create();
}
return props_ExtensionDeclaration;
case LanguageConceptSwitch.ExtensionFieldDeclaration:
if (props_ExtensionFieldDeclaration == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.deprecated(true);
props_ExtensionFieldDeclaration = cpb.create();
}
return props_ExtensionFieldDeclaration;
case LanguageConceptSwitch.ExtensionFieldReference:
if (props_ExtensionFieldReference == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.deprecated(true);
props_ExtensionFieldReference = cpb.create();
}
return props_ExtensionFieldReference;
case LanguageConceptSwitch.ExtensionFunction:
if (props_ExtensionFunction == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.deprecated(true);
props_ExtensionFunction = cpb.create();
}
return props_ExtensionFunction;
case LanguageConceptSwitch.ExtensionObjectGetter:
if (props_ExtensionObjectGetter == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.deprecated(true);
props_ExtensionObjectGetter = cpb.create();
}
return props_ExtensionObjectGetter;
case LanguageConceptSwitch.ExtensionPointDeclaration:
if (props_ExtensionPointDeclaration == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(0xc0080a477e374558L, 0xbee99ae18e690549L, 0x33c018482cafa9d6L);
cpb.deprecateProperty(0x520ae19dd2771b96L, "extensionName");
props_ExtensionPointDeclaration = cpb.create();
}
return props_ExtensionPointDeclaration;
case LanguageConceptSwitch.ExtensionPointExpression:
if (props_ExtensionPointExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtensionPointExpression = cpb.create();
}
return props_ExtensionPointExpression;
case LanguageConceptSwitch.ExtensionPointType:
if (props_ExtensionPointType == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtensionPointType = cpb.create();
}
return props_ExtensionPointType;
case LanguageConceptSwitch.GetExtensionObjectsOperation:
if (props_GetExtensionObjectsOperation == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_GetExtensionObjectsOperation = cpb.create();
}
return props_GetExtensionObjectsOperation;
case LanguageConceptSwitch.IRootWithUniqueName:
if (props_IRootWithUniqueName == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_IRootWithUniqueName = cpb.create();
}
return props_IRootWithUniqueName;
}
return null;
}
}