Commit e961a976 authored by André Pacak's avatar André Pacak

change lookup function (has ITerm as toplevel to distinguish between cases and...

change lookup function (has ITerm as toplevel to distinguish between cases and other parts of the language (ExpTerm)
parent c2722538
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="blbyt4hgxxxrflg62dw7kdj2k4yu9ai">
<files names="Add_Editor.java:Add_EditorBuilder_a.java:Anno_Editor.java:Anno_EditorBuilder_a.java:App_Editor.java:App_EditorBuilder_a.java:Case_Editor.java:Case_EditorBuilder_a.java:EditorAspectDescriptorImpl.java:Fun_Editor.java:Fun_EditorBuilder_a.java:GrammarActionsDescriptor.java:GrammarCellsSubstituteMenu_Add.java:GrammarCellsSubstituteMenu_Anno.java:GrammarCellsSubstituteMenu_App.java:GrammarCellsSubstituteMenu_Case.java:GrammarCellsSubstituteMenu_Fun.java:GrammarCellsSubstituteMenu_IModuleElem.java:GrammarCellsSubstituteMenu_Lam.java:GrammarCellsSubstituteMenu_Let.java:GrammarCellsSubstituteMenu_Match.java:GrammarCellsSubstituteMenu_Module.java:GrammarCellsSubstituteMenu_ModuleElemDef.java:GrammarCellsSubstituteMenu_ModuleElemEmpty.java:GrammarCellsSubstituteMenu_ModuleImport.java:GrammarCellsSubstituteMenu_Mult.java:GrammarCellsSubstituteMenu_Nat.java:GrammarCellsSubstituteMenu_ParensTerm.java:GrammarCellsSubstituteMenu_ParensType.java:GrammarCellsSubstituteMenu_Succ.java:GrammarCellsSubstituteMenu_Tag.java:GrammarCellsSubstituteMenu_Term.java:GrammarCellsSubstituteMenu_Type.java:GrammarCellsSubstituteMenu_Var.java:GrammarCellsSubstituteMenu_VariantType.java:GrammarCellsSubstituteMenu_VariantTypeEntry.java:GrammarCellsSubstituteMenu_Zero.java:Lam_Editor.java:Lam_EditorBuilder_a.java:Let_Editor.java:Let_EditorBuilder_a.java:Match_Editor.java:Match_EditorBuilder_a.java:ModuleElemDef_Editor.java:ModuleElemDef_EditorBuilder_a.java:ModuleElemEmpty_SubstituteMenu.java:ModuleImport_Editor.java:ModuleImport_EditorBuilder_a.java:Module_Editor.java:Module_EditorBuilder_a.java:Mult_Editor.java:Mult_EditorBuilder_a.java:Nat_Editor.java:Nat_EditorBuilder_a.java:ParensTerm_Editor.java:ParensTerm_EditorBuilder_a.java:ParensType_Editor.java:ParensType_EditorBuilder_a.java:Succ_Editor.java:Succ_EditorBuilder_a.java:Tag_Editor.java:Tag_EditorBuilder_a.java:Var_Editor.java:Var_EditorBuilder_a.java:VariantTypeEntry_Editor.java:VariantTypeEntry_EditorBuilder_a.java:VariantType_Editor.java:VariantType_EditorBuilder_a.java:Zero_Editor.java:Zero_EditorBuilder_a.java:template_GrammarCellsSideTransformationsMenu.java" />
<files names="Add_Editor.java:Add_EditorBuilder_a.java:Anno_Editor.java:Anno_EditorBuilder_a.java:App_Editor.java:App_EditorBuilder_a.java:Case_Editor.java:Case_EditorBuilder_a.java:EditorAspectDescriptorImpl.java:Fun_Editor.java:Fun_EditorBuilder_a.java:GrammarActionsDescriptor.java:GrammarCellsSubstituteMenu_Add.java:GrammarCellsSubstituteMenu_Anno.java:GrammarCellsSubstituteMenu_App.java:GrammarCellsSubstituteMenu_Case.java:GrammarCellsSubstituteMenu_ExpTerm.java:GrammarCellsSubstituteMenu_Fun.java:GrammarCellsSubstituteMenu_IModuleElem.java:GrammarCellsSubstituteMenu_ITerm.java:GrammarCellsSubstituteMenu_Lam.java:GrammarCellsSubstituteMenu_Let.java:GrammarCellsSubstituteMenu_Match.java:GrammarCellsSubstituteMenu_Module.java:GrammarCellsSubstituteMenu_ModuleElemDef.java:GrammarCellsSubstituteMenu_ModuleElemEmpty.java:GrammarCellsSubstituteMenu_ModuleImport.java:GrammarCellsSubstituteMenu_Mult.java:GrammarCellsSubstituteMenu_Nat.java:GrammarCellsSubstituteMenu_ParensTerm.java:GrammarCellsSubstituteMenu_ParensType.java:GrammarCellsSubstituteMenu_Succ.java:GrammarCellsSubstituteMenu_Tag.java:GrammarCellsSubstituteMenu_Type.java:GrammarCellsSubstituteMenu_Var.java:GrammarCellsSubstituteMenu_VariantType.java:GrammarCellsSubstituteMenu_VariantTypeEntry.java:GrammarCellsSubstituteMenu_Zero.java:Lam_Editor.java:Lam_EditorBuilder_a.java:Let_Editor.java:Let_EditorBuilder_a.java:Match_Editor.java:Match_EditorBuilder_a.java:ModuleElemDef_Editor.java:ModuleElemDef_EditorBuilder_a.java:ModuleElemEmpty_SubstituteMenu.java:ModuleImport_Editor.java:ModuleImport_EditorBuilder_a.java:Module_Editor.java:Module_EditorBuilder_a.java:Mult_Editor.java:Mult_EditorBuilder_a.java:Nat_Editor.java:Nat_EditorBuilder_a.java:ParensTerm_Editor.java:ParensTerm_EditorBuilder_a.java:ParensType_Editor.java:ParensType_EditorBuilder_a.java:Succ_Editor.java:Succ_EditorBuilder_a.java:Tag_Editor.java:Tag_EditorBuilder_a.java:Var_Editor.java:Var_EditorBuilder_a.java:VariantTypeEntry_Editor.java:VariantTypeEntry_EditorBuilder_a.java:VariantType_Editor.java:VariantType_EditorBuilder_a.java:Zero_Editor.java:Zero_EditorBuilder_a.java:template_GrammarCellsSideTransformationsMenu.java" />
</product>
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-8l3cf6htglh2dj9mb7olfl2mb0ih90i">
<product version="3" modelHash="9udpqb6sbjx1pekxqloxps847fxr1if">
<files names="Language.java" />
</product>
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="c3ck0f250bdxvkwibpshxv6ia6n3lso">
<product version="3" modelHash="-ea5ajeiv7fit12u2h4kt0hnwzjmhnrz">
<files names="ConceptPresentationAspectImpl.java:LanguageConceptSwitch.java:StructureAspectDescriptor.java" />
</product>
......@@ -71,7 +71,7 @@ import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"), null);
return;
}
......@@ -102,7 +102,7 @@ import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"), null);
return;
}
......@@ -266,7 +266,7 @@ import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb930bL, "t2"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb930bL, "t2"), null);
return;
}
......@@ -297,7 +297,7 @@ import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb930bL, "t2"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb930bL, "t2"), null);
return;
}
......
......@@ -191,7 +191,7 @@ import jetbrains.mps.smodel.action.SNodeFactoryOperations;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"), null);
return;
}
......@@ -222,7 +222,7 @@ import jetbrains.mps.smodel.action.SNodeFactoryOperations;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"), null);
return;
}
......
......@@ -17,15 +17,15 @@ import org.jetbrains.mps.openapi.persistence.PersistenceFacade;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public class GrammarCellsSubstituteMenu_Term extends SubstituteMenuBase {
public GrammarCellsSubstituteMenu_Term() {
public class GrammarCellsSubstituteMenu_ExpTerm extends SubstituteMenuBase {
public GrammarCellsSubstituteMenu_ExpTerm() {
super(true);
}
@NotNull
@Override
protected List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> getParts(final SubstituteMenuContext _context) {
List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> result = new ArrayList<MenuPart<SubstituteMenuItem, SubstituteMenuContext>>();
result.add(new GrammarCellsSubstituteMenu_Term.GrammarCellsSubstituteMenuPart_8ham6c_a());
result.add(new GrammarCellsSubstituteMenu_ExpTerm.GrammarCellsSubstituteMenuPart_jitps6_a());
return result;
}
......@@ -33,7 +33,7 @@ public class GrammarCellsSubstituteMenu_Term extends SubstituteMenuBase {
@Override
public List<SubstituteMenuItem> createMenuItems(@NotNull SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("contribution to the " + "default substitute menu for " + "Term", null));
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("contribution to the " + "default substitute menu for " + "ExpTerm", null));
try {
return super.createMenuItems(context);
} finally {
......@@ -42,14 +42,14 @@ public class GrammarCellsSubstituteMenu_Term extends SubstituteMenuBase {
}
private class GrammarCellsSubstituteMenuPart_8ham6c_a extends GrammarCellsSubstituteMenuPart {
private class GrammarCellsSubstituteMenuPart_jitps6_a extends GrammarCellsSubstituteMenuPart {
@Override
public SModule getModule(SRepository repository) {
return PersistenceFacade.getInstance().createModuleReference("3ace5b6c-22d5-4933-9217-595f2ebf8d6a(VariantTypes)").resolve(repository);
}
@Override
public SAbstractConcept getExpectedOutputConcept() {
return MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term");
return MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm");
}
}
}
package VariantTypes.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
import jetbrains.mps.lang.editor.menus.MenuPart;
import jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuItem;
import jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuContext;
import java.util.ArrayList;
import jetbrains.mps.lang.editor.menus.EditorMenuDescriptorBase;
import com.mbeddr.mpsutil.grammarcells.runtime.menu.GrammarCellsSubstituteMenuPart;
import org.jetbrains.mps.openapi.module.SModule;
import org.jetbrains.mps.openapi.module.SRepository;
import org.jetbrains.mps.openapi.persistence.PersistenceFacade;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public class GrammarCellsSubstituteMenu_ITerm extends SubstituteMenuBase {
public GrammarCellsSubstituteMenu_ITerm() {
super(true);
}
@NotNull
@Override
protected List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> getParts(final SubstituteMenuContext _context) {
List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> result = new ArrayList<MenuPart<SubstituteMenuItem, SubstituteMenuContext>>();
result.add(new GrammarCellsSubstituteMenu_ITerm.GrammarCellsSubstituteMenuPart_e72h64_a());
return result;
}
@NotNull
@Override
public List<SubstituteMenuItem> createMenuItems(@NotNull SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("contribution to the " + "default substitute menu for " + "ITerm", null));
try {
return super.createMenuItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
private class GrammarCellsSubstituteMenuPart_e72h64_a extends GrammarCellsSubstituteMenuPart {
@Override
public SModule getModule(SRepository repository) {
return PersistenceFacade.getInstance().createModuleReference("3ace5b6c-22d5-4933-9217-595f2ebf8d6a(VariantTypes)").resolve(repository);
}
@Override
public SAbstractConcept getExpectedOutputConcept() {
return MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x31cba602171a9c1L, "VariantTypes.structure.ITerm");
}
}
}
......@@ -421,7 +421,7 @@ import jetbrains.mps.smodel.action.SNodeFactoryOperations;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"), null);
return;
}
......@@ -452,7 +452,7 @@ import jetbrains.mps.smodel.action.SNodeFactoryOperations;
// replace with placeholder
SNode child = SLinkOperations.getTarget(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"));
SAbstractConcept childConcept = SNodeOperations.getConcept(child);
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.Term")))) {
if (!(GrammarCellsUtil.isExactly(childConcept, MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L, "VariantTypes.structure.ExpTerm")))) {
SNodeFactoryOperations.setNewChild(node, MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"), null);
return;
}
......
......@@ -13,8 +13,10 @@ public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase
private ConceptPresentation props_Anno;
private ConceptPresentation props_App;
private ConceptPresentation props_Case;
private ConceptPresentation props_ExpTerm;
private ConceptPresentation props_Fun;
private ConceptPresentation props_IModuleElem;
private ConceptPresentation props_ITerm;
private ConceptPresentation props_Lam;
private ConceptPresentation props_Let;
private ConceptPresentation props_Match;
......@@ -28,7 +30,6 @@ public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase
private ConceptPresentation props_ParensType;
private ConceptPresentation props_Succ;
private ConceptPresentation props_Tag;
private ConceptPresentation props_Term;
private ConceptPresentation props_Type;
private ConceptPresentation props_Var;
private ConceptPresentation props_VariantType;
......@@ -68,6 +69,12 @@ public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase
props_Case = cpb.create();
}
return props_Case;
case LanguageConceptSwitch.ExpTerm:
if (props_ExpTerm == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ExpTerm = cpb.create();
}
return props_ExpTerm;
case LanguageConceptSwitch.Fun:
if (props_Fun == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
......@@ -81,6 +88,12 @@ public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase
props_IModuleElem = cpb.create();
}
return props_IModuleElem;
case LanguageConceptSwitch.ITerm:
if (props_ITerm == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_ITerm = cpb.create();
}
return props_ITerm;
case LanguageConceptSwitch.Lam:
if (props_Lam == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
......@@ -172,12 +185,6 @@ public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase
props_Tag = cpb.create();
}
return props_Tag;
case LanguageConceptSwitch.Term:
if (props_Term == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_Term = cpb.create();
}
return props_Term;
case LanguageConceptSwitch.Type:
if (props_Type == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
......
......@@ -13,27 +13,28 @@ public final class LanguageConceptSwitch {
public static final int Anno = 1;
public static final int App = 2;
public static final int Case = 3;
public static final int Fun = 4;
public static final int IModuleElem = 5;
public static final int Lam = 6;
public static final int Let = 7;
public static final int Match = 8;
public static final int Module = 9;
public static final int ModuleElemDef = 10;
public static final int ModuleElemEmpty = 11;
public static final int ModuleImport = 12;
public static final int Mult = 13;
public static final int Nat = 14;
public static final int ParensTerm = 15;
public static final int ParensType = 16;
public static final int Succ = 17;
public static final int Tag = 18;
public static final int Term = 19;
public static final int Type = 20;
public static final int Var = 21;
public static final int VariantType = 22;
public static final int VariantTypeEntry = 23;
public static final int Zero = 24;
public static final int ExpTerm = 4;
public static final int Fun = 5;
public static final int IModuleElem = 6;
public static final int ITerm = 7;
public static final int Lam = 8;
public static final int Let = 9;
public static final int Match = 10;
public static final int Module = 11;
public static final int ModuleElemDef = 12;
public static final int ModuleElemEmpty = 13;
public static final int ModuleImport = 14;
public static final int Mult = 15;
public static final int Nat = 16;
public static final int ParensTerm = 17;
public static final int ParensType = 18;
public static final int Succ = 19;
public static final int Tag = 20;
public static final int Type = 21;
public static final int Var = 22;
public static final int VariantType = 23;
public static final int VariantTypeEntry = 24;
public static final int Zero = 25;
public LanguageConceptSwitch() {
LanguageConceptIndexBuilder builder = new LanguageConceptIndexBuilder(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL);
......@@ -41,8 +42,10 @@ public final class LanguageConceptSwitch {
builder.put(0x1a4a252762eb937fL, Anno);
builder.put(0x1a4a252762eb936bL, App);
builder.put(0x9229981a3b8f721L, Case);
builder.put(0x1a4a252762eb92d1L, ExpTerm);
builder.put(0x1a4a252762eb9390L, Fun);
builder.put(0x6efbff39c953ef86L, IModuleElem);
builder.put(0x31cba602171a9c1L, ITerm);
builder.put(0x1a4a252762eb9322L, Lam);
builder.put(0x1a4a252762eb933aL, Let);
builder.put(0x9229981a3b8f61cL, Match);
......@@ -56,7 +59,6 @@ public final class LanguageConceptSwitch {
builder.put(0x1a4a252762eb93faL, ParensType);
builder.put(0x1a4a252762eb92d7L, Succ);
builder.put(0x9229981a3b8f573L, Tag);
builder.put(0x1a4a252762eb92d1L, Term);
builder.put(0x1a4a252762eb938fL, Type);
builder.put(0x1a4a252762eb92e0L, Var);
builder.put(0x1fd8e2cf9df802c6L, VariantType);
......
......@@ -18,8 +18,10 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
/*package*/ final ConceptDescriptor myConceptAnno = createDescriptorForAnno();
/*package*/ final ConceptDescriptor myConceptApp = createDescriptorForApp();
/*package*/ final ConceptDescriptor myConceptCase = createDescriptorForCase();
/*package*/ final ConceptDescriptor myConceptExpTerm = createDescriptorForExpTerm();
/*package*/ final ConceptDescriptor myConceptFun = createDescriptorForFun();
/*package*/ final ConceptDescriptor myConceptIModuleElem = createDescriptorForIModuleElem();
/*package*/ final ConceptDescriptor myConceptITerm = createDescriptorForITerm();
/*package*/ final ConceptDescriptor myConceptLam = createDescriptorForLam();
/*package*/ final ConceptDescriptor myConceptLet = createDescriptorForLet();
/*package*/ final ConceptDescriptor myConceptMatch = createDescriptorForMatch();
......@@ -33,7 +35,6 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
/*package*/ final ConceptDescriptor myConceptParensType = createDescriptorForParensType();
/*package*/ final ConceptDescriptor myConceptSucc = createDescriptorForSucc();
/*package*/ final ConceptDescriptor myConceptTag = createDescriptorForTag();
/*package*/ final ConceptDescriptor myConceptTerm = createDescriptorForTerm();
/*package*/ final ConceptDescriptor myConceptType = createDescriptorForType();
/*package*/ final ConceptDescriptor myConceptVar = createDescriptorForVar();
/*package*/ final ConceptDescriptor myConceptVariantType = createDescriptorForVariantType();
......@@ -47,7 +48,7 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
@Override
public Collection<ConceptDescriptor> getDescriptors() {
return Arrays.asList(myConceptAdd, myConceptAnno, myConceptApp, myConceptCase, myConceptFun, myConceptIModuleElem, myConceptLam, myConceptLet, myConceptMatch, myConceptModule, myConceptModuleElemDef, myConceptModuleElemEmpty, myConceptModuleImport, myConceptMult, myConceptNat, myConceptParensTerm, myConceptParensType, myConceptSucc, myConceptTag, myConceptTerm, myConceptType, myConceptVar, myConceptVariantType, myConceptVariantTypeEntry, myConceptZero);
return Arrays.asList(myConceptAdd, myConceptAnno, myConceptApp, myConceptCase, myConceptExpTerm, myConceptFun, myConceptIModuleElem, myConceptITerm, myConceptLam, myConceptLet, myConceptMatch, myConceptModule, myConceptModuleElemDef, myConceptModuleElemEmpty, myConceptModuleImport, myConceptMult, myConceptNat, myConceptParensTerm, myConceptParensType, myConceptSucc, myConceptTag, myConceptType, myConceptVar, myConceptVariantType, myConceptVariantTypeEntry, myConceptZero);
}
@Override
......@@ -62,10 +63,14 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
return myConceptApp;
case LanguageConceptSwitch.Case:
return myConceptCase;
case LanguageConceptSwitch.ExpTerm:
return myConceptExpTerm;
case LanguageConceptSwitch.Fun:
return myConceptFun;
case LanguageConceptSwitch.IModuleElem:
return myConceptIModuleElem;
case LanguageConceptSwitch.ITerm:
return myConceptITerm;
case LanguageConceptSwitch.Lam:
return myConceptLam;
case LanguageConceptSwitch.Let:
......@@ -92,8 +97,6 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
return myConceptSucc;
case LanguageConceptSwitch.Tag:
return myConceptTag;
case LanguageConceptSwitch.Term:
return myConceptTerm;
case LanguageConceptSwitch.Type:
return myConceptType;
case LanguageConceptSwitch.Var:
......@@ -153,6 +156,7 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
private static ConceptDescriptor createDescriptorForCase() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "Case", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f721L);
b.class_(false, false, false);
b.parent(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x31cba602171a9c1L);
b.origin("r:cc1f3bc7-690e-4d71-8bfd-44a4ce63edf7(VariantTypes.structure)/658257277626152737");
b.version(2);
b.property("label", 0x9229981a3b8f726L).type(PrimitiveTypeId.STRING).origin("658257277626152742").done();
......@@ -160,6 +164,14 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
b.aggregate("t", 0x9229981a3b8f731L).target(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L).optional(false).ordered(true).multiple(false).origin("658257277626152753").done();
return b.create();
}
private static ConceptDescriptor createDescriptorForExpTerm() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "ExpTerm", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L);
b.interface_();
b.parent(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x31cba602171a9c1L);
b.origin("r:cc1f3bc7-690e-4d71-8bfd-44a4ce63edf7(VariantTypes.structure)/1894367444356272849");
b.version(2);
return b.create();
}
private static ConceptDescriptor createDescriptorForFun() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "Fun", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L);
b.class_(false, false, false);
......@@ -178,6 +190,13 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
b.version(2);
return b.create();
}
private static ConceptDescriptor createDescriptorForITerm() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "ITerm", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x31cba602171a9c1L);
b.interface_();
b.origin("r:cc1f3bc7-690e-4d71-8bfd-44a4ce63edf7(VariantTypes.structure)/224259003502406081");
b.version(2);
return b.create();
}
private static ConceptDescriptor createDescriptorForLam() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "Lam", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9322L);
b.class_(false, false, false);
......@@ -307,13 +326,6 @@ public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
b.alias("tag");
return b.create();
}
private static ConceptDescriptor createDescriptorForTerm() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "Term", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d1L);
b.interface_();
b.origin("r:cc1f3bc7-690e-4d71-8bfd-44a4ce63edf7(VariantTypes.structure)/1894367444356272849");
b.version(2);
return b.create();
}
private static ConceptDescriptor createDescriptorForType() {
ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("VariantTypes", "Type", 0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb938fL);
b.interface_();
......
......@@ -48,8 +48,8 @@
<node concept="1SCrpo" id="2WR4rot1hIY" role="2BHfFu">
<node concept="2EAAYt" id="2WR4rot1hJD" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rot1hKd" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="a" />
<node concept="1SCrvK" id="2WR4rot1hKI" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rot1hL2" role="1SCrvV">
<property role="TrG5h" value="x" />
......
......@@ -63,8 +63,8 @@
<node concept="1SCrpo" id="2WR4rot1hLi" role="2BHfFu">
<node concept="2EAAYt" id="2WR4rot1hLJ" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rot1hO4" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="a" />
<node concept="1SCrvK" id="2WR4rot1hO_" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rot1hOL" role="1SCrvV">
<property role="TrG5h" value="x" />
......@@ -72,8 +72,8 @@
</node>
</node>
<node concept="2EAAUw" id="2WR4rot1hOQ" role="2EAAYI">
<property role="2EAAUF" value="b" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="b" />
<node concept="1SCrv7" id="2WR4rot1hPa" role="2EAAUK">
<property role="TrG5h" value="x" />
</node>
......
......@@ -65,8 +65,8 @@
<node concept="1SCrpo" id="2WR4rot1h$f" role="2BHfFu">
<node concept="2EAAYt" id="2WR4rot1h$B" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rot1hA$" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="a" />
<node concept="1SCro5" id="2WR4rot1hAZ" role="2EAAUK">
<property role="TrG5h" value="y" />
<node concept="1SCroP" id="2WR4rot1hBa" role="1SCroh">
......@@ -80,8 +80,8 @@
</node>
</node>
<node concept="2EAAUw" id="2WR4rot1hBR" role="2EAAYI">
<property role="2EAAUF" value="b" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="b" />
<node concept="1SCro5" id="2WR4rot1hCx" role="2EAAUK">
<property role="TrG5h" value="y" />
<node concept="1SCroP" id="2WR4rot1hCG" role="1SCroh">
......
......@@ -69,8 +69,8 @@
<node concept="1SCrrb" id="2WR4rot1hnS" role="1SCrrM" />
<node concept="2EAAYt" id="2WR4rot1hnp" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rot1hqc" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="a" />
<node concept="1SCrvK" id="2WR4rot1hr8" role="2EAAUK">
<node concept="1SCrvK" id="2WR4rot1hrE" role="1SCrvV">
<node concept="1SCrv7" id="2WR4rot1hsj" role="1SCrvV">
......@@ -80,8 +80,8 @@
</node>
</node>
<node concept="2EAAUw" id="2WR4rot1hso" role="2EAAYI">
<property role="2EAAUF" value="b" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="b" />
<node concept="1SCrpc" id="2WR4rot1hsX" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rot1htj" role="1SCrpj">
<property role="TrG5h" value="x" />
......
......@@ -76,8 +76,8 @@
<node concept="1SCrrb" id="2WR4rot1hvV" role="1SCrrM" />
<node concept="2EAAYt" id="2WR4rot1hvs" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rot1hyi" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUB" value="a" />
<property role="2EAAUF" value="x" />
<node concept="1SCrvK" id="2WR4rot1hy_" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rot1hyV" role="1SCrvV">
<property role="TrG5h" value="x" />
......@@ -85,8 +85,8 @@
</node>
</node>
<node concept="2EAAUw" id="2WR4rot1hz0" role="2EAAYI">
<property role="2EAAUF" value="b" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="b" />
<node concept="1SCrpc" id="2WR4rot1hz_" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rot1hzS" role="1SCrpj">
<property role="TrG5h" value="x" />
......
......@@ -58,8 +58,8 @@
<node concept="1SCrrb" id="2WR4rosZKdE" role="1SCrrM" />
<node concept="2EAAYt" id="2WR4rosZKdb" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rosZKeN" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="a" />
<node concept="1SCrvK" id="2WR4rosZKfk" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rosZKfz" role="1SCrvV">
<property role="TrG5h" value="x" />
......
......@@ -68,8 +68,8 @@
<node concept="1SCrpo" id="2WR4rosZK3g" role="2BHfFu">
<node concept="2EAAYt" id="2WR4rosZK3_" role="1SCrqz">
<node concept="2EAAUw" id="2WR4rosZK6e" role="2EAAYI">
<property role="2EAAUF" value="a" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="a" />
<node concept="1SCrvK" id="2WR4rosZK6J" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rosZK6V" role="1SCrvV">
<property role="TrG5h" value="x" />
......@@ -77,8 +77,8 @@
</node>
</node>
<node concept="2EAAUw" id="2WR4rosZK70" role="2EAAYI">
<property role="2EAAUF" value="b" />
<property role="2EAAUB" value="x" />
<property role="2EAAUF" value="x" />
<property role="2EAAUB" value="b" />
<node concept="1SCrpc" id="2WR4rosZK7w" role="2EAAUK">
<node concept="1SCrv7" id="2WR4rosZK87" role="1SCrpj">
<property role="TrG5h" value="x" />
......
......@@ -473,6 +473,39 @@
<classNode dependClassName="org.inca.core.runtime.plugin.MPSQuerySpecificationHints" />
<classNode extendsClassName="org.inca.core.runtime.plugin.MPSQuerySpecification" />
</dependency>
<dependency className="VariantTypes_Checker.model.Typing_ConditionCaseQuerySpecification">
<classNode dependClassName="VariantTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.lang.SuppressWarnings" />
<classNode dependClassName="java.util.ArrayList" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.HashSet" />
<classNode dependClassName="java.util.List" />
<classNode dependClassName="java.util.Set" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.SetSequence" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />