package jetbrains.mps.samples.lambdaCalculus.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.EditorAspectDescriptorBase;
import org.jetbrains.annotations.NotNull;
import java.util.Collection;
import jetbrains.mps.openapi.editor.descriptor.ConceptEditor;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import java.util.Collections;
import jetbrains.mps.openapi.editor.descriptor.TransformationMenu;
import jetbrains.mps.openapi.editor.descriptor.NamedMenuId;
import java.util.Arrays;
import jetbrains.mps.openapi.editor.descriptor.SubstituteMenu;
import jetbrains.mps.lang.smodel.ConceptSwitchIndex;
import jetbrains.mps.lang.smodel.ConceptSwitchIndexBuilder;
import jetbrains.mps.smodel.adapter.ids.MetaIdFactory;
public class EditorAspectDescriptorImpl extends EditorAspectDescriptorBase {
@NotNull
public Collection<ConceptEditor> getDeclaredEditors(SAbstractConcept concept) {
SAbstractConcept cncpt_a0a = ((SAbstractConcept) concept);
switch (index_xbvbvu_a0a.index(cncpt_a0a)) {
case 0:
return Collections.<ConceptEditor>singletonList(new BinaryOperation_Editor());
case 1:
return Collections.<ConceptEditor>singletonList(new FunctionType_Editor());
case 2:
return Collections.<ConceptEditor>singletonList(new LambdaAbstraction_Editor());
case 3:
return Collections.<ConceptEditor>singletonList(new LambdaApplication_Editor());
case 4:
return Collections.<ConceptEditor>singletonList(new LetExpression_Editor());
case 5:
return Collections.<ConceptEditor>singletonList(new MultipleExpression_Editor());
case 6:
return Collections.<ConceptEditor>singletonList(new NumberType_Editor());
case 7:
return Collections.<ConceptEditor>singletonList(new NumericConstant_Editor());
case 8:
return Collections.<ConceptEditor>singletonList(new ParenthesisExpression_Editor());
case 9:
return Collections.<ConceptEditor>singletonList(new Program_Editor());
case 10:
return Collections.<ConceptEditor>singletonList(new StringConstant_Editor());
case 11:
return Collections.<ConceptEditor>singletonList(new StringType_Editor());
case 12:
return Collections.<ConceptEditor>singletonList(new Variable_Editor());
case 13:
return Collections.<ConceptEditor>singletonList(new VariableReference_Editor());
default:
}
return Collections.<ConceptEditor>emptyList();
}
@NotNull
@Override
public Collection<TransformationMenu> getDeclaredDefaultTransformationMenus(SAbstractConcept concept) {
SAbstractConcept cncpt_a0d = concept;
switch (index_xbvbvu_a0d.index(cncpt_a0d)) {
case 0:
return Collections.<TransformationMenu>singletonList(new LambdaExpression_TransformationMenu());
default:
}
return Collections.<TransformationMenu>emptyList();
}
@NotNull
@Override
public Collection<TransformationMenu> getDeclaredNamedTransformationMenus(NamedMenuId menuId) {
SAbstractConcept cncpt_a0e = (SAbstractConcept) menuId.getConcept();
switch (index_xbvbvu_a0e.index(cncpt_a0e)) {
case 0:
if (true) {
switch (Arrays.binarySearch(stringSwitchCases_xbvbvu_a0a0a0a1a4, menuId.getFqName())) {
case 0:
return Arrays.asList(new TransformationMenu[]{new BinaryOperations()});
case 1:
return Arrays.asList(new TransformationMenu[]{new SideTransformApplication()});
case 2:
return Arrays.asList(new TransformationMenu[]{new SideTransformMultiple()});
default:
}
}
break;
default:
}
return Collections.<TransformationMenu>emptyList();
}
@NotNull
@Override
public Collection<SubstituteMenu> getDeclaredDefaultSubstituteMenus(SAbstractConcept concept) {
SAbstractConcept cncpt_a0f = concept;
switch (index_xbvbvu_a0f.index(cncpt_a0f)) {
case 0:
return Collections.<SubstituteMenu>singletonList(new LambdaExpression_SubstituteMenu());
default:
}
return Collections.<SubstituteMenu>emptyList();
}
@NotNull
@Override
public Collection<SubstituteMenu> getDeclaredNamedSubstituteMenus(NamedMenuId menuId) {
SAbstractConcept cncpt_a0g = (SAbstractConcept) menuId.getConcept();
switch (index_xbvbvu_a0g.index(cncpt_a0g)) {
case 0:
if (true) {
switch (Arrays.binarySearch(stringSwitchCases_xbvbvu_a0a0a0a1a6, menuId.getFqName())) {
case 0:
return Arrays.asList(new SubstituteMenu[]{new Lambda_Substitute()});
case 1:
return Arrays.asList(new SubstituteMenu[]{new Let_Substitute()});
case 2:
return Arrays.asList(new SubstituteMenu[]{new Numeric_Substitute()});
case 3:
return Arrays.asList(new SubstituteMenu[]{new ParenthesisSubstitute()});
default:
}
}
break;
default:
}
return Collections.<SubstituteMenu>emptyList();
}
private static final ConceptSwitchIndex index_xbvbvu_a0a = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x1ad829a6925a095bL), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x3ee0e3dd7c1afae8L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7eccf80L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ee2dddL), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x448ba254edbfc79fL), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x15b75b54f176d1a3L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x3ee0e3dd7c1afadaL), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ee2dd5L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x3735fdad52687b59L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7fc0389L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ee2dc8L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x3ee0e3dd7c1afae1L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x48db75d5dc496b12L), MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x48db75d5dc496b08L)).seal();
private static final ConceptSwitchIndex index_xbvbvu_a0d = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ec98e9L)).seal();
private static final ConceptSwitchIndex index_xbvbvu_a0e = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ec98e9L)).seal();
private static final ConceptSwitchIndex index_xbvbvu_a0f = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ec98e9L)).seal();
private static final ConceptSwitchIndex index_xbvbvu_a0g = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0x7c9e280794ad4afcL, 0xadf0aaee45eb2895L, 0x37d11ba7d7ec98e9L)).seal();
private static String[] stringSwitchCases_xbvbvu_a0a0a0a1a4 = new String[]{"jetbrains.mps.samples.lambdaCalculus.editor.BinaryOperations", "jetbrains.mps.samples.lambdaCalculus.editor.SideTransformApplication", "jetbrains.mps.samples.lambdaCalculus.editor.SideTransformMultiple"};
private static String[] stringSwitchCases_xbvbvu_a0a0a0a1a6 = new String[]{"jetbrains.mps.samples.lambdaCalculus.editor.Lambda_Substitute", "jetbrains.mps.samples.lambdaCalculus.editor.Let_Substitute", "jetbrains.mps.samples.lambdaCalculus.editor.Numeric_Substitute", "jetbrains.mps.samples.lambdaCalculus.editor.ParenthesisSubstitute"};
}