package jetbrains.mps.lang.traceable.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_ScopeConcept; private ConceptPresentation props_TraceableConcept; private ConceptPresentation props_UnitConcept; @Override @Nullable public ConceptPresentation getDescriptor(SAbstractConcept c) { StructureAspectDescriptor structureDescriptor = (StructureAspectDescriptor) myLanguageRuntime.getAspect(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.class); switch (structureDescriptor.internalIndex(c)) { case LanguageConceptSwitch.ScopeConcept: if (props_ScopeConcept == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_ScopeConcept = cpb.create(); } return props_ScopeConcept; case LanguageConceptSwitch.TraceableConcept: if (props_TraceableConcept == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_TraceableConcept = cpb.create(); } return props_TraceableConcept; case LanguageConceptSwitch.UnitConcept: if (props_UnitConcept == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_UnitConcept = cpb.create(); } return props_UnitConcept; } return null; } }