Commit e7e43255 authored by André Pacak's avatar André Pacak
Browse files

functional implementation of typechecker (sumtypes) in IncA

parent 63d6f349
This diff is collapsed.
......@@ -170,7 +170,7 @@
</registry>
<node concept="312cEu" id="0">
<property role="3GE5qa" value="term" />
<property role="TrG5h" value="CaseCase_Constraints" />
<property role="TrG5h" value="CCase_Constraints" />
<node concept="3Tm1VV" id="1" role="1B3o_S">
<node concept="cd27G" id="7" role="lGtFl">
<node concept="3u3nmq" id="8" role="cd27D">
......@@ -225,7 +225,7 @@
</node>
</node>
<node concept="Xl_RD" id="o" role="37wK5m">
<property role="Xl_RC" value="SumTypes.structure.CaseCase" />
<property role="Xl_RC" value="SumTypes.structure.CCase" />
<node concept="cd27G" id="w" role="lGtFl">
<node concept="3u3nmq" id="x" role="cd27D">
<property role="3u3nmv" value="2951477311799629350" />
......@@ -926,7 +926,7 @@
<node concept="3clFbS" id="4G" role="1pnPq1">
<node concept="3cpWs6" id="4I" role="3cqZAp">
<node concept="1nCR9W" id="4J" role="3cqZAk">
<property role="1nD$Q0" value="SumTypes.constraints.CaseCase_Constraints" />
<property role="1nD$Q0" value="SumTypes.constraints.CCase_Constraints" />
<node concept="3uibUv" id="4K" role="2lIhxL">
<ref role="3uigEE" to="ze1i:~ConstraintsDescriptor" resolve="ConstraintsDescriptor" />
</node>
......@@ -934,7 +934,7 @@
</node>
</node>
<node concept="3gn64h" id="4H" role="1pnPq6">
<ref role="3gnhBz" to="xkot:1Da9ityUUyE" resolve="CaseCase" />
<ref role="3gnhBz" to="xkot:1Da9ityUUyE" resolve="CCase" />
</node>
</node>
<node concept="3clFbS" id="4s" role="1prKM_" />
......
......@@ -76,19 +76,19 @@
</file>
</root>
<root nodeRef="r:974e8c2a-7080-4ca5-bdab-6d74431c3763(SumTypes.constraints)/2951477311799629350">
<file name="CaseCase_Constraints.java">
<node id="2951477311799629350" at="17,33,18,134" concept="5" />
<file name="CCase_Constraints.java">
<node id="2951477311799629350" at="17,30,18,131" concept="5" />
<node id="2951477311799629350" at="22,84,23,119" concept="3" />
<node id="2951477311799629428" at="26,40,27,20" concept="4" />
<node id="2951477311799629428" at="30,70,31,37" concept="3" />
<node id="2951477311799629434" at="31,37,32,149" concept="4" />
<node id="2951477311799629350" at="34,7,35,22" concept="4" />
<node id="2951477311799629350" at="17,0,20,0" concept="0" trace="CaseCase_Constraints#()V" />
<node id="2951477311799629350" at="17,0,20,0" concept="0" trace="CCase_Constraints#()V" />
<node id="2951477311799629428" at="25,0,29,0" concept="2" trace="hasOwnValidator#()Z" />
<node id="2951477311799629428" at="29,0,34,0" concept="2" trace="validateValue#(Lorg/jetbrains/mps/openapi/model/SNode;Ljava/lang/String;)Z" />
<node id="2951477311799629428" at="23,119,34,7" concept="1" />
<node id="2951477311799629350" at="21,0,37,0" concept="2" trace="getSpecifiedProperties#()Ljava/util/Map;" />
<scope id="2951477311799629350" at="17,33,18,134" />
<scope id="2951477311799629350" at="17,30,18,131" />
<scope id="2951477311799629428" at="26,40,27,20" />
<scope id="2951477311799629428" at="30,70,32,149">
<var name="propertyName" id="2951477311799629428" />
......@@ -103,8 +103,8 @@
<var name="properties" id="2951477311799629350" />
</scope>
<scope id="2951477311799629350" at="21,0,37,0" />
<unit id="2951477311799629428" at="24,137,34,5" name="SumTypes.constraints.CaseCase_Constraints$1" />
<unit id="2951477311799629350" at="16,0,38,0" name="SumTypes.constraints.CaseCase_Constraints" />
<unit id="2951477311799629428" at="24,137,34,5" name="SumTypes.constraints.CCase_Constraints$1" />
<unit id="2951477311799629350" at="16,0,38,0" name="SumTypes.constraints.CCase_Constraints" />
</file>
</root>
<root nodeRef="r:974e8c2a-7080-4ca5-bdab-6d74431c3763(SumTypes.constraints)/7618853173233427716">
......
......@@ -184,7 +184,7 @@
</node>
<node concept="1M2fIO" id="2zPKfCWshoA">
<property role="3GE5qa" value="term" />
<ref role="1M2myG" to="xkot:1Da9ityUUyE" resolve="CaseCase" />
<ref role="1M2myG" to="xkot:1Da9ityUUyE" resolve="CCase" />
<node concept="EnEH3" id="2zPKfCWshpO" role="1MhHOB">
<ref role="EomxK" to="tpck:h0TrG11" resolve="name" />
<node concept="QB0g5" id="2zPKfCWshpS" role="QCWH9">
......
......@@ -46,6 +46,7 @@
</concept>
<concept id="1073389882823" name="jetbrains.mps.lang.editor.structure.CellModel_RefNode" flags="sg" stub="730538219795960754" index="3F1sOY" />
<concept id="1073390211982" name="jetbrains.mps.lang.editor.structure.CellModel_RefNodeList" flags="sg" stub="2794558372793454595" index="3F2HdR" />
<concept id="1198256887712" name="jetbrains.mps.lang.editor.structure.CellModel_Indent" flags="ng" index="3XFhqQ" />
<concept id="1166049232041" name="jetbrains.mps.lang.editor.structure.AbstractComponent" flags="ng" index="1XWOmA">
<reference id="1166049300910" name="conceptDeclaration" index="1XX52x" />
</concept>
......@@ -258,28 +259,42 @@
<node concept="24kQdi" id="6JCho9VC0np">
<property role="3GE5qa" value="term" />
<ref role="1XX52x" to="xkot:1Da9ityUUxN" resolve="Case" />
<node concept="3EZMnI" id="6JCho9VC0nr" role="2wV5jI">
<node concept="3F0ifn" id="6JCho9VC0nC" role="3EZMnx">
<node concept="3EZMnI" id="6m6bBlJmbRi" role="2wV5jI">
<node concept="l2Vlx" id="6m6bBlJmbRj" role="2iSdaV" />
<node concept="3F0ifn" id="6m6bBlJmbRm" role="3EZMnx">
<property role="3F0ifm" value="case" />
</node>
<node concept="3F1sOY" id="6AVADwUwFhD" role="3EZMnx">
<node concept="3F1sOY" id="6m6bBlJmbRr" role="3EZMnx">
<ref role="1NtTu8" to="xkot:1Da9ityUUxS" resolve="matchee" />
</node>
<node concept="3F0ifn" id="6JCho9VC0ox" role="3EZMnx">
<node concept="3F0ifn" id="6m6bBlJmbRz" role="3EZMnx">
<property role="3F0ifm" value="of" />
</node>
<node concept="3F1sOY" id="6AVADwUwFy$" role="3EZMnx">
<ref role="1NtTu8" to="xkot:1Da9ityUUyQ" resolve="c1" />
<node concept="3XFhqQ" id="6m6bBlJmbTP" role="3EZMnx" />
<node concept="3F0A7n" id="6m6bBlJmbU8" role="3EZMnx">
<ref role="1NtTu8" to="xkot:6m6bBlJafKa" resolve="name1" />
</node>
<node concept="3F1sOY" id="6AVADwUwFVn" role="3EZMnx">
<ref role="1NtTu8" to="xkot:1Da9ityUUyX" resolve="c2" />
<node concept="3F0ifn" id="6m6bBlJmbUm" role="3EZMnx">
<property role="3F0ifm" value="-&gt;" />
</node>
<node concept="3F1sOY" id="6m6bBlJmbUA" role="3EZMnx">
<ref role="1NtTu8" to="xkot:1Da9ityUUyQ" resolve="t1" />
</node>
<node concept="3XFhqQ" id="6m6bBlJmbVA" role="3EZMnx" />
<node concept="3F0A7n" id="6m6bBlJmbVU" role="3EZMnx">
<ref role="1NtTu8" to="xkot:6m6bBlJafKc" resolve="name2" />
</node>
<node concept="3F0ifn" id="6m6bBlJmbWg" role="3EZMnx">
<property role="3F0ifm" value="-&gt;" />
</node>
<node concept="3F1sOY" id="6m6bBlJmbWC" role="3EZMnx">
<ref role="1NtTu8" to="xkot:1Da9ityUUyX" resolve="t2" />
</node>
<node concept="l2Vlx" id="6JCho9VC0nu" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="6JCho9VC0qE">
<property role="3GE5qa" value="term" />
<ref role="1XX52x" to="xkot:1Da9ityUUyE" resolve="CaseCase" />
<ref role="1XX52x" to="xkot:1Da9ityUUyE" resolve="CCase" />
<node concept="3EZMnI" id="6JCho9VC0qG" role="2wV5jI">
<node concept="3F0A7n" id="6JCho9VC0qT" role="3EZMnx">
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
......
......@@ -14,6 +14,7 @@
<property id="6714410169261853888" name="conceptId" index="EcuMT" />
<property id="5092175715804935370" name="conceptAlias" index="34LRSv" />
<child id="1071489727083" name="linkDeclaration" index="1TKVEi" />
<child id="1071489727084" name="propertyDeclaration" index="1TKVEl" />
</concept>
<concept id="1169125989551" name="jetbrains.mps.lang.structure.structure.InterfaceConceptDeclaration" flags="ig" index="PlHQZ" />
<concept id="1169127622168" name="jetbrains.mps.lang.structure.structure.InterfaceConceptReference" flags="ig" index="PrWs8">
......@@ -24,6 +25,10 @@
<reference id="1071489389519" name="extends" index="1TJDcQ" />
<child id="1169129564478" name="implements" index="PzmwI" />
</concept>
<concept id="1071489288299" name="jetbrains.mps.lang.structure.structure.PropertyDeclaration" flags="ig" index="1TJgyi">
<property id="241647608299431129" name="propertyId" index="IQ2nx" />
<reference id="1082985295845" name="dataType" index="AX2Wp" />
</concept>
<concept id="1071489288298" name="jetbrains.mps.lang.structure.structure.LinkDeclaration" flags="ig" index="1TJgyj">
<property id="1071599776563" name="role" index="20kJfa" />
<property id="1071599893252" name="sourceCardinality" index="20lbJX" />
......@@ -375,22 +380,32 @@
<node concept="1TJgyj" id="1Da9ityUUyQ" role="1TKVEi">
<property role="IQ2ns" value="1894367444356278454" />
<property role="20lmBu" value="aggregation" />
<property role="20kJfa" value="c1" />
<property role="20kJfa" value="t1" />
<property role="20lbJX" value="1" />
<ref role="20lvS9" node="1Da9ityUUyE" resolve="CaseCase" />
<ref role="20lvS9" node="1Da9ityUTbh" resolve="Term" />
</node>
<node concept="1TJgyj" id="1Da9ityUUyX" role="1TKVEi">
<property role="IQ2ns" value="1894367444356278461" />
<property role="20lmBu" value="aggregation" />
<property role="20kJfa" value="c2" />
<property role="20kJfa" value="t2" />
<property role="20lbJX" value="1" />
<ref role="20lvS9" node="1Da9ityUUyE" resolve="CaseCase" />
<ref role="20lvS9" node="1Da9ityUTbh" resolve="Term" />
</node>
<node concept="1TJgyi" id="6m6bBlJafKa" role="1TKVEl">
<property role="IQ2nx" value="7315585726620957706" />
<property role="TrG5h" value="name1" />
<ref role="AX2Wp" to="tpck:fKAOsGN" resolve="string" />
</node>
<node concept="1TJgyi" id="6m6bBlJafKc" role="1TKVEl">
<property role="IQ2nx" value="7315585726620957708" />
<property role="TrG5h" value="name2" />
<ref role="AX2Wp" to="tpck:fKAOsGN" resolve="string" />
</node>
</node>
<node concept="1TIwiD" id="1Da9ityUUyE">
<property role="EcuMT" value="1894367444356278442" />
<property role="3GE5qa" value="term" />
<property role="TrG5h" value="CaseCase" />
<property role="TrG5h" value="CCase" />
<ref role="1TJDcQ" to="tpck:gw2VY9q" resolve="BaseConcept" />
<node concept="1TJgyj" id="1Da9ityUUyJ" role="1TKVEi">
<property role="IQ2ns" value="1894367444356278447" />
......
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="SumTypes.constraints.CaseCase_Constraints">
<dependency className="SumTypes.constraints.CCase_Constraints">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.HashMap" />
......@@ -15,7 +15,7 @@
<classNode extendsClassName="jetbrains.mps.smodel.runtime.base.BaseConstraintsDescriptor" />
</dependency>
<dependency className="SumTypes.constraints.ConstraintsAspectDescriptor">
<classNode dependClassName="SumTypes.constraints.CaseCase_Constraints" />
<classNode dependClassName="SumTypes.constraints.CCase_Constraints" />
<classNode dependClassName="SumTypes.constraints.Lam_Constraints" />
<classNode dependClassName="SumTypes.constraints.Let_Constraints" />
<classNode dependClassName="SumTypes.constraints.Var_Constraints" />
......
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-ae17k825ga15mwtrwvbvg1p5pz71ceu">
<files names="CaseCase_Constraints.java:ConstraintsAspectDescriptor.java:Lam_Constraints.java:Let_Constraints.java:Var_Constraints.java" />
<product version="3" modelHash="-5uugb64gc44ecqjz2xeivxlx5bf9jvf">
<files names="CCase_Constraints.java:ConstraintsAspectDescriptor.java:Lam_Constraints.java:Let_Constraints.java:Var_Constraints.java" />
</product>
......@@ -114,14 +114,14 @@
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="SumTypes.editor.CaseCase_Editor">
<classNode dependClassName="SumTypes.editor.CaseCase_EditorBuilder_a" />
<dependency className="SumTypes.editor.CCase_Editor">
<classNode dependClassName="SumTypes.editor.CCase_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="SumTypes.editor.CaseCase_EditorBuilder_a">
<dependency className="SumTypes.editor.CCase_EditorBuilder_a">
<classNode dependClassName="com.mbeddr.mpsutil.grammarcells.runtime.CellActionWithReadAccess" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
......@@ -174,23 +174,41 @@
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="SumTypes.editor.Case_EditorBuilder_a">
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSPropertyOrNode" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSmart" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SingleRoleCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
......@@ -198,14 +216,14 @@
<classNode dependClassName="SumTypes.editor.Add_Editor" />
<classNode dependClassName="SumTypes.editor.Anno_Editor" />
<classNode dependClassName="SumTypes.editor.App_Editor" />
<classNode dependClassName="SumTypes.editor.CaseCase_Editor" />
<classNode dependClassName="SumTypes.editor.CCase_Editor" />
<classNode dependClassName="SumTypes.editor.Case_Editor" />
<classNode dependClassName="SumTypes.editor.Fun_Editor" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_Add" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_Anno" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_App" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_CCase" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_Case" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_CaseCase" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_Fun" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_IModuleElem" />
<classNode dependClassName="SumTypes.editor.GrammarCellsSubstituteMenu_InL" />
......@@ -299,7 +317,7 @@
<classNode dependClassName="SumTypes.editor.Add_Editor" />
<classNode dependClassName="SumTypes.editor.Anno_Editor" />
<classNode dependClassName="SumTypes.editor.App_Editor" />
<classNode dependClassName="SumTypes.editor.CaseCase_Editor" />
<classNode dependClassName="SumTypes.editor.CCase_Editor" />
<classNode dependClassName="SumTypes.editor.Fun_Editor" />
<classNode dependClassName="SumTypes.editor.Let_Editor" />
<classNode dependClassName="SumTypes.editor.Succ_Editor" />
......@@ -418,7 +436,7 @@
<classNode dependClassName="org.jetbrains.mps.openapi.persistence.PersistenceFacade" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase" />
</dependency>
<dependency className="SumTypes.editor.GrammarCellsSubstituteMenu_Case">
<dependency className="SumTypes.editor.GrammarCellsSubstituteMenu_CCase">
<classNode dependClassName="com.mbeddr.mpsutil.grammarcells.runtime.menu.GrammarCellsSubstituteMenuPart" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.ArrayList" />
......@@ -435,7 +453,7 @@
<classNode dependClassName="org.jetbrains.mps.openapi.persistence.PersistenceFacade" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase" />
</dependency>
<dependency className="SumTypes.editor.GrammarCellsSubstituteMenu_CaseCase">
<dependency className="SumTypes.editor.GrammarCellsSubstituteMenu_Case">
<classNode dependClassName="com.mbeddr.mpsutil.grammarcells.runtime.menu.GrammarCellsSubstituteMenuPart" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.ArrayList" />
......
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-3otejg5vci9mwsgi3d2l7t4ue8p97md">
<files names="Add_Editor.java:Add_EditorBuilder_a.java:Anno_Editor.java:Anno_EditorBuilder_a.java:App_Editor.java:App_EditorBuilder_a.java:CaseCase_Editor.java:CaseCase_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_CaseCase.java:GrammarCellsSubstituteMenu_Fun.java:GrammarCellsSubstituteMenu_IModuleElem.java:GrammarCellsSubstituteMenu_InL.java:GrammarCellsSubstituteMenu_InR.java:GrammarCellsSubstituteMenu_Lam.java:GrammarCellsSubstituteMenu_Let.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_Sum.java:GrammarCellsSubstituteMenu_Term.java:GrammarCellsSubstituteMenu_Type.java:GrammarCellsSubstituteMenu_Var.java:GrammarCellsSubstituteMenu_Zero.java:InL_Editor.java:InL_EditorBuilder_a.java:InR_Editor.java:InR_EditorBuilder_a.java:Lam_Editor.java:Lam_EditorBuilder_a.java:Let_Editor.java:Let_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:Sum_Editor.java:Sum_EditorBuilder_a.java:Var_Editor.java:Var_EditorBuilder_a.java:Zero_Editor.java:Zero_EditorBuilder_a.java:template_GrammarCellsSideTransformationsMenu.java" />
<product version="3" modelHash="cixbw4on4dswh37ldmasd1l6oca8f5y">
<files names="Add_Editor.java:Add_EditorBuilder_a.java:Anno_Editor.java:Anno_EditorBuilder_a.java:App_Editor.java:App_EditorBuilder_a.java:CCase_Editor.java:CCase_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_CCase.java:GrammarCellsSubstituteMenu_Case.java:GrammarCellsSubstituteMenu_Fun.java:GrammarCellsSubstituteMenu_IModuleElem.java:GrammarCellsSubstituteMenu_InL.java:GrammarCellsSubstituteMenu_InR.java:GrammarCellsSubstituteMenu_Lam.java:GrammarCellsSubstituteMenu_Let.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_Sum.java:GrammarCellsSubstituteMenu_Term.java:GrammarCellsSubstituteMenu_Type.java:GrammarCellsSubstituteMenu_Var.java:GrammarCellsSubstituteMenu_Zero.java:InL_Editor.java:InL_EditorBuilder_a.java:InR_Editor.java:InR_EditorBuilder_a.java:Lam_Editor.java:Lam_EditorBuilder_a.java:Let_Editor.java:Let_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:Sum_Editor.java:Sum_EditorBuilder_a.java:Var_Editor.java:Var_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="-8zhe524f3m3wgwzon42jotpzwu2754j">
<product version="3" modelHash="-g1iezjogyijdpkhbnbt5cw546zz9w8">
<files names="Language.java" />
</product>
......@@ -22,6 +22,7 @@
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.PrimitiveTypeId" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.SConceptId" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConceptDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.DataTypeDescriptor" />
......
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="17n1fs0ic3yht1xwze65halwbr8a98i">
<product version="3" modelHash="-an9483fzk2po58vhxy1movxqafplz3v">
<files names="ConceptPresentationAspectImpl.java:LanguageConceptSwitch.java:StructureAspectDescriptor.java" />
</product>
......@@ -13,9 +13,9 @@ import jetbrains.mps.smodel.adapter.ids.MetaIdFactory;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
public class CaseCase_Constraints extends BaseConstraintsDescriptor {
public CaseCase_Constraints() {
super(MetaAdapterFactory.getConcept(0x8d2332833fa47ceL, 0x89dfdaaa7554f251L, 0x1a4a252762eba8aaL, "SumTypes.structure.CaseCase"));
public class CCase_Constraints extends BaseConstraintsDescriptor {
public CCase_Constraints() {
super(MetaAdapterFactory.getConcept(0x8d2332833fa47ceL, 0x89dfdaaa7554f251L, 0x1a4a252762eba8aaL, "SumTypes.structure.CCase"));
}
@Override
......
......@@ -19,7 +19,7 @@ public class ConstraintsAspectDescriptor extends BaseConstraintsAspectDescriptor
SAbstractConcept cncpt = concept;
switch (conceptIndex.index(cncpt)) {
case 0:
return new CaseCase_Constraints();
return new CCase_Constraints();
case 1:
return new Lam_Constraints();
case 2:
......
......@@ -170,7 +170,7 @@
</registry>
<node concept="312cEu" id="0">
<property role="3GE5qa" value="term" />
<property role="TrG5h" value="CaseCase_Constraints" />
<property role="TrG5h" value="CCase_Constraints" />
<node concept="3Tm1VV" id="1" role="1B3o_S">
<node concept="cd27G" id="7" role="lGtFl">
<node concept="3u3nmq" id="8" role="cd27D">
......@@ -225,7 +225,7 @@
</node>
</node>
<node concept="Xl_RD" id="o" role="37wK5m">
<property role="Xl_RC" value="SumTypes.structure.CaseCase" />
<property role="Xl_RC" value="SumTypes.structure.CCase" />
<node concept="cd27G" id="w" role="lGtFl">
<node concept="3u3nmq" id="x" role="cd27D">
<property role="3u3nmv" value="2951477311799629350" />
......@@ -926,7 +926,7 @@
<node concept="3clFbS" id="4G" role="1pnPq1">
<node concept="3cpWs6" id="4I" role="3cqZAp">
<node concept="1nCR9W" id="4J" role="3cqZAk">
<property role="1nD$Q0" value="SumTypes.constraints.CaseCase_Constraints" />
<property role="1nD$Q0" value="SumTypes.constraints.CCase_Constraints" />
<node concept="3uibUv" id="4K" role="2lIhxL">
<ref role="3uigEE" to="ze1i:~ConstraintsDescriptor" resolve="ConstraintsDescriptor" />
</node>
......@@ -934,7 +934,7 @@
</node>
</node>
<node concept="3gn64h" id="4H" role="1pnPq6">
<ref role="3gnhBz" to="xkot:1Da9ityUUyE" resolve="CaseCase" />
<ref role="3gnhBz" to="xkot:1Da9ityUUyE" resolve="CCase" />
</node>
</node>
<node concept="3clFbS" id="4s" role="1prKM_" />
......
......@@ -76,19 +76,19 @@
</file>
</root>
<root nodeRef="r:974e8c2a-7080-4ca5-bdab-6d74431c3763(SumTypes.constraints)/2951477311799629350">
<file name="CaseCase_Constraints.java">
<node id="2951477311799629350" at="17,33,18,134" concept="5" />
<file name="CCase_Constraints.java">
<node id="2951477311799629350" at="17,30,18,131" concept="5" />
<node id="2951477311799629350" at="22,84,23,119" concept="3" />
<node id="2951477311799629428" at="26,40,27,20" concept="4" />
<node id="2951477311799629428" at="30,70,31,37" concept="3" />
<node id="2951477311799629434" at="31,37,32,149" concept="4" />
<node id="2951477311799629350" at="34,7,35,22" concept="4" />
<node id="2951477311799629350" at="17,0,20,0" concept="0" trace="CaseCase_Constraints#()V" />
<node id="2951477311799629350" at="17,0,20,0" concept="0" trace="CCase_Constraints#()V" />
<node id="2951477311799629428" at="25,0,29,0" concept="2" trace="hasOwnValidator#()Z" />
<node id="2951477311799629428" at="29,0,34,0" concept="2" trace="validateValue#(Lorg/jetbrains/mps/openapi/model/SNode;Ljava/lang/String;)Z" />
<node id="2951477311799629428" at="23,119,34,7" concept="1" />
<node id="2951477311799629350" at="21,0,37,0" concept="2" trace="getSpecifiedProperties#()Ljava/util/Map;" />
<scope id="2951477311799629350" at="17,33,18,134" />
<scope id="2951477311799629350" at="17,30,18,131" />
<scope id="2951477311799629428" at="26,40,27,20" />
<scope id="2951477311799629428" at="30,70,32,149">
<var name="propertyName" id="2951477311799629428" />
......@@ -103,8 +103,8 @@
<var name="properties" id="2951477311799629350" />
</scope>
<scope id="2951477311799629350" at="21,0,37,0" />
<unit id="2951477311799629428" at="24,137,34,5" name="SumTypes.constraints.CaseCase_Constraints$1" />
<unit id="2951477311799629350" at="16,0,38,0" name="SumTypes.constraints.CaseCase_Constraints" />
<unit id="2951477311799629428" at="24,137,34,5" name="SumTypes.constraints.CCase_Constraints$1" />
<unit id="2951477311799629350" at="16,0,38,0" name="SumTypes.constraints.CCase_Constraints" />
</file>
</root>
<root nodeRef="r:974e8c2a-7080-4ca5-bdab-6d74431c3763(SumTypes.constraints)/7618853173233427716">
......
......@@ -7,8 +7,8 @@ import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class CaseCase_Editor extends DefaultNodeEditor {
public class CCase_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new CaseCase_EditorBuilder_a(editorContext, node).createCell();
return new CCase_EditorBuilder_a(editorContext, node).createCell();
}
}
......@@ -43,11 +43,11 @@ import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
/*package*/ class CaseCase_EditorBuilder_a extends AbstractEditorBuilder {
/*package*/ class CCase_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public CaseCase_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
public CCase_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
......@@ -64,7 +64,7 @@ import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_i40dfq_a");
editorCell.setCellId("Collection_8otkf0_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createCustomFactory_1());
......@@ -217,19 +217,19 @@ import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "->");
editorCell.setCellId("Constant_i40dfq_a1a");
editorCell.setCellId("Constant_8otkf0_a1a");
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefNode_0() {
SingleRoleCellProvider provider = new CaseCase_EditorBuilder_a.tSingleRoleHandler_i40dfq_c0(myNode, MetaAdapterFactory.getContainmentLink(0x8d2332833fa47ceL, 0x89dfdaaa7554f251L, 0x1a4a252762eba8aaL, 0x1a4a252762eba8afL, "t"), getEditorContext());
SingleRoleCellProvider provider = new CCase_EditorBuilder_a.tSingleRoleHandler_8otkf0_c0(myNode, MetaAdapterFactory.getContainmentLink(0x8d2332833fa47ceL, 0x89dfdaaa7554f251L, 0x1a4a252762eba8aaL, 0x1a4a252762eba8afL, "t"), getEditorContext());
return provider.createCell();
}
private static class tSingleRoleHandler_i40dfq_c0 extends SingleRoleCellProvider {
private static class tSingleRoleHandler_8otkf0_c0 extends SingleRoleCellProvider {
@NotNull
private SNode myNode;
public tSingleRoleHandler_i40dfq_c0(SNode ownerNode, SContainmentLink containmentLink, EditorContext context) {
public tSingleRoleHandler_8otkf0_c0(SNode ownerNode, SContainmentLink containmentLink, EditorContext context) {
super(containmentLink, context);
myNode = ownerNode;
}
......
......@@ -19,6 +19,23 @@ import jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
import jetbrains.mps.nodeEditor.cells.EditorCell_Indent;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSPropertyOrNode;
import jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;