package jetbrains.mps.lang.scopes.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_ComeFromExpression;
private ConceptPresentation props_CompositeWithParentScopeExpression;
private ConceptPresentation props_ParentScope;
private ConceptPresentation props_UniformScopeProvider;
@Override
@Nullable
public ConceptPresentation getDescriptor(SAbstractConcept c) {
StructureAspectDescriptor structureDescriptor = (StructureAspectDescriptor) myLanguageRuntime.getAspect(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.class);
switch (structureDescriptor.internalIndex(c)) {
case LanguageConceptSwitch.ComeFromExpression:
if (props_ComeFromExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ComeFromExpression = cpb.create();
}
return props_ComeFromExpression;
case LanguageConceptSwitch.CompositeWithParentScopeExpression:
if (props_CompositeWithParentScopeExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_CompositeWithParentScopeExpression = cpb.create();
}
return props_CompositeWithParentScopeExpression;
case LanguageConceptSwitch.ParentScope:
if (props_ParentScope == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ParentScope = cpb.create();
}
return props_ParentScope;
case LanguageConceptSwitch.UniformScopeProvider:
if (props_UniformScopeProvider == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_UniformScopeProvider = cpb.create();
}
return props_UniformScopeProvider;
}
return null;
}
}