package jetbrains.mps.baseLanguageInternal.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_ConstantValue;
private ConceptPresentation props_ExtractStatementListExpression;
private ConceptPresentation props_ExtractStatementListInnerExpression;
private ConceptPresentation props_ExtractStaticInnerClassConcept;
private ConceptPresentation props_ExtractStaticInnerClassCreator;
private ConceptPresentation props_ExtractStaticInnerClassExpression;
private ConceptPresentation props_ExtractStaticMethodExpression;
private ConceptPresentation props_ExtractStaticMethod_CallExpression;
private ConceptPresentation props_ExtractToConstantExpression;
private ConceptPresentation props_ExtractToConstantRefExpression;
private ConceptPresentation props_InternalAnonymousClass;
private ConceptPresentation props_InternalAnonymousClassCreator;
private ConceptPresentation props_InternalClassCreator;
private ConceptPresentation props_InternalClassExpression;
private ConceptPresentation props_InternalClassifierType;
private ConceptPresentation props_InternalNewExpression;
private ConceptPresentation props_InternalPartialFieldReference;
private ConceptPresentation props_InternalPartialInstanceMethodCall;
private ConceptPresentation props_InternalStaticFieldReference;
private ConceptPresentation props_InternalStaticMethodCall;
private ConceptPresentation props_InternalSuperMethodCallOperation;
private ConceptPresentation props_InternalThisExpression;
private ConceptPresentation props_InternalTypedStaticFieldReference;
private ConceptPresentation props_InternalVariableReference;
private ConceptPresentation props_TypeHintExpression;
private ConceptPresentation props_WeakClassReference;
@Override
@Nullable
public ConceptPresentation getDescriptor(SAbstractConcept c) {
StructureAspectDescriptor structureDescriptor = (StructureAspectDescriptor) myLanguageRuntime.getAspect(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.class);
switch (structureDescriptor.internalIndex(c)) {
case LanguageConceptSwitch.ConstantValue:
if (props_ConstantValue == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ConstantValue = cpb.create();
}
return props_ConstantValue;
case LanguageConceptSwitch.ExtractStatementListExpression:
if (props_ExtractStatementListExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractStatementListExpression = cpb.create();
}
return props_ExtractStatementListExpression;
case LanguageConceptSwitch.ExtractStatementListInnerExpression:
if (props_ExtractStatementListInnerExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractStatementListInnerExpression = cpb.create();
}
return props_ExtractStatementListInnerExpression;
case LanguageConceptSwitch.ExtractStaticInnerClassConcept:
if (props_ExtractStaticInnerClassConcept == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractStaticInnerClassConcept = cpb.create();
}
return props_ExtractStaticInnerClassConcept;
case LanguageConceptSwitch.ExtractStaticInnerClassCreator:
if (props_ExtractStaticInnerClassCreator == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractStaticInnerClassCreator = cpb.create();
}
return props_ExtractStaticInnerClassCreator;
case LanguageConceptSwitch.ExtractStaticInnerClassExpression:
if (props_ExtractStaticInnerClassExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractStaticInnerClassExpression = cpb.create();
}
return props_ExtractStaticInnerClassExpression;
case LanguageConceptSwitch.ExtractStaticMethodExpression:
if (props_ExtractStaticMethodExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractStaticMethodExpression = cpb.create();
}
return props_ExtractStaticMethodExpression;
case LanguageConceptSwitch.ExtractStaticMethod_CallExpression:
if (props_ExtractStaticMethod_CallExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("extract static method invocation");
props_ExtractStaticMethod_CallExpression = cpb.create();
}
return props_ExtractStaticMethod_CallExpression;
case LanguageConceptSwitch.ExtractToConstantExpression:
if (props_ExtractToConstantExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractToConstantExpression = cpb.create();
}
return props_ExtractToConstantExpression;
case LanguageConceptSwitch.ExtractToConstantRefExpression:
if (props_ExtractToConstantRefExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExtractToConstantRefExpression = cpb.create();
}
return props_ExtractToConstantRefExpression;
case LanguageConceptSwitch.InternalAnonymousClass:
if (props_InternalAnonymousClass == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("_anonymous class");
props_InternalAnonymousClass = cpb.create();
}
return props_InternalAnonymousClass;
case LanguageConceptSwitch.InternalAnonymousClassCreator:
if (props_InternalAnonymousClassCreator == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_InternalAnonymousClassCreator = cpb.create();
}
return props_InternalAnonymousClassCreator;
case LanguageConceptSwitch.InternalClassCreator:
if (props_InternalClassCreator == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal class creator");
props_InternalClassCreator = cpb.create();
}
return props_InternalClassCreator;
case LanguageConceptSwitch.InternalClassExpression:
if (props_InternalClassExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal class expression");
props_InternalClassExpression = cpb.create();
}
return props_InternalClassExpression;
case LanguageConceptSwitch.InternalClassifierType:
if (props_InternalClassifierType == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_InternalClassifierType = cpb.create();
}
return props_InternalClassifierType;
case LanguageConceptSwitch.InternalNewExpression:
if (props_InternalNewExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal new expression");
props_InternalNewExpression = cpb.create();
}
return props_InternalNewExpression;
case LanguageConceptSwitch.InternalPartialFieldReference:
if (props_InternalPartialFieldReference == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_InternalPartialFieldReference = cpb.create();
}
return props_InternalPartialFieldReference;
case LanguageConceptSwitch.InternalPartialInstanceMethodCall:
if (props_InternalPartialInstanceMethodCall == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_InternalPartialInstanceMethodCall = cpb.create();
}
return props_InternalPartialInstanceMethodCall;
case LanguageConceptSwitch.InternalStaticFieldReference:
if (props_InternalStaticFieldReference == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal static field reference");
props_InternalStaticFieldReference = cpb.create();
}
return props_InternalStaticFieldReference;
case LanguageConceptSwitch.InternalStaticMethodCall:
if (props_InternalStaticMethodCall == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal static method call");
props_InternalStaticMethodCall = cpb.create();
}
return props_InternalStaticMethodCall;
case LanguageConceptSwitch.InternalSuperMethodCallOperation:
if (props_InternalSuperMethodCallOperation == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_InternalSuperMethodCallOperation = cpb.create();
}
return props_InternalSuperMethodCallOperation;
case LanguageConceptSwitch.InternalThisExpression:
if (props_InternalThisExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_InternalThisExpression = cpb.create();
}
return props_InternalThisExpression;
case LanguageConceptSwitch.InternalTypedStaticFieldReference:
if (props_InternalTypedStaticFieldReference == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal typed static field reference");
props_InternalTypedStaticFieldReference = cpb.create();
}
return props_InternalTypedStaticFieldReference;
case LanguageConceptSwitch.InternalVariableReference:
if (props_InternalVariableReference == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("internal variable/parameter reference");
props_InternalVariableReference = cpb.create();
}
return props_InternalVariableReference;
case LanguageConceptSwitch.TypeHintExpression:
if (props_TypeHintExpression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_TypeHintExpression = cpb.create();
}
return props_TypeHintExpression;
case LanguageConceptSwitch.WeakClassReference:
if (props_WeakClassReference == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.shortDesc("weak reference to a class");
props_WeakClassReference = cpb.create();
}
return props_WeakClassReference;
}
return null;
}
}