package jetbrains.mps.samples.lambdaCalculus.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_AbstractionVarRef; private ConceptPresentation props_AbstractionVariable; private ConceptPresentation props_AddOperation; private ConceptPresentation props_BinaryNumericOperation; private ConceptPresentation props_BinaryOperation; private ConceptPresentation props_BinaryStringOperation; private ConceptPresentation props_ConcatenateOperation; private ConceptPresentation props_DivideOperation; private ConceptPresentation props_FunctionType; private ConceptPresentation props_LambdaAbstraction; private ConceptPresentation props_LambdaApplication; private ConceptPresentation props_LambdaExpression; private ConceptPresentation props_LambdaType; private ConceptPresentation props_LetExpression; private ConceptPresentation props_LetRef; private ConceptPresentation props_LetVariable; private ConceptPresentation props_MultipleExpression; private ConceptPresentation props_MultiplyOperation; private ConceptPresentation props_NumberType; private ConceptPresentation props_NumericConstant; private ConceptPresentation props_ParenthesisExpression; private ConceptPresentation props_Program; private ConceptPresentation props_StringConstant; private ConceptPresentation props_StringType; private ConceptPresentation props_SubtractOperation; private ConceptPresentation props_Variable; private ConceptPresentation props_VariableOwner; private ConceptPresentation props_VariableReference; @Override @Nullable public ConceptPresentation getDescriptor(SAbstractConcept c) { StructureAspectDescriptor structureDescriptor = (StructureAspectDescriptor) myLanguageRuntime.getAspect(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.class); switch (structureDescriptor.internalIndex(c)) { case LanguageConceptSwitch.AbstractionVarRef: if (props_AbstractionVarRef == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_AbstractionVarRef = cpb.create(); } return props_AbstractionVarRef; case LanguageConceptSwitch.AbstractionVariable: if (props_AbstractionVariable == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_AbstractionVariable = cpb.create(); } return props_AbstractionVariable; case LanguageConceptSwitch.AddOperation: if (props_AddOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_AddOperation = cpb.create(); } return props_AddOperation; case LanguageConceptSwitch.BinaryNumericOperation: if (props_BinaryNumericOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_BinaryNumericOperation = cpb.create(); } return props_BinaryNumericOperation; case LanguageConceptSwitch.BinaryOperation: if (props_BinaryOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_BinaryOperation = cpb.create(); } return props_BinaryOperation; case LanguageConceptSwitch.BinaryStringOperation: if (props_BinaryStringOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_BinaryStringOperation = cpb.create(); } return props_BinaryStringOperation; case LanguageConceptSwitch.ConcatenateOperation: if (props_ConcatenateOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_ConcatenateOperation = cpb.create(); } return props_ConcatenateOperation; case LanguageConceptSwitch.DivideOperation: if (props_DivideOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_DivideOperation = cpb.create(); } return props_DivideOperation; case LanguageConceptSwitch.FunctionType: if (props_FunctionType == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_FunctionType = cpb.create(); } return props_FunctionType; case LanguageConceptSwitch.LambdaAbstraction: if (props_LambdaAbstraction == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LambdaAbstraction = cpb.create(); } return props_LambdaAbstraction; case LanguageConceptSwitch.LambdaApplication: if (props_LambdaApplication == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LambdaApplication = cpb.create(); } return props_LambdaApplication; case LanguageConceptSwitch.LambdaExpression: if (props_LambdaExpression == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LambdaExpression = cpb.create(); } return props_LambdaExpression; case LanguageConceptSwitch.LambdaType: if (props_LambdaType == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LambdaType = cpb.create(); } return props_LambdaType; case LanguageConceptSwitch.LetExpression: if (props_LetExpression == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LetExpression = cpb.create(); } return props_LetExpression; case LanguageConceptSwitch.LetRef: if (props_LetRef == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LetRef = cpb.create(); } return props_LetRef; case LanguageConceptSwitch.LetVariable: if (props_LetVariable == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_LetVariable = cpb.create(); } return props_LetVariable; case LanguageConceptSwitch.MultipleExpression: if (props_MultipleExpression == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_MultipleExpression = cpb.create(); } return props_MultipleExpression; case LanguageConceptSwitch.MultiplyOperation: if (props_MultiplyOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_MultiplyOperation = cpb.create(); } return props_MultiplyOperation; case LanguageConceptSwitch.NumberType: if (props_NumberType == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_NumberType = cpb.create(); } return props_NumberType; case LanguageConceptSwitch.NumericConstant: if (props_NumericConstant == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_NumericConstant = cpb.create(); } return props_NumericConstant; case LanguageConceptSwitch.ParenthesisExpression: if (props_ParenthesisExpression == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_ParenthesisExpression = cpb.create(); } return props_ParenthesisExpression; case LanguageConceptSwitch.Program: if (props_Program == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_Program = cpb.create(); } return props_Program; case LanguageConceptSwitch.StringConstant: if (props_StringConstant == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_StringConstant = cpb.create(); } return props_StringConstant; case LanguageConceptSwitch.StringType: if (props_StringType == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_StringType = cpb.create(); } return props_StringType; case LanguageConceptSwitch.SubtractOperation: if (props_SubtractOperation == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_SubtractOperation = cpb.create(); } return props_SubtractOperation; case LanguageConceptSwitch.Variable: if (props_Variable == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_Variable = cpb.create(); } return props_Variable; case LanguageConceptSwitch.VariableOwner: if (props_VariableOwner == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_VariableOwner = cpb.create(); } return props_VariableOwner; case LanguageConceptSwitch.VariableReference: if (props_VariableReference == null) { ConceptPresentationBuilder cpb = new ConceptPresentationBuilder(); props_VariableReference = cpb.create(); } return props_VariableReference; } return null; } }