Introduce j.m.lang.typechecking lang to provide typechecking aspect-related services. Abstract away aspect generation/discovery logic to make it reusable.

This commit is contained in:
Fedor Isakov 2018-06-14 14:54:50 +02:00
parent fda586c45c
commit 20c107e428
23 changed files with 3362 additions and 1849 deletions

View File

@ -13,9 +13,11 @@
<modulePath path="$PROJECT_DIR$/logic/solutions/jetbrains.mps.logic.test/jetbrains.mps.logic.test.msd" folder="logic" />
<modulePath path="$PROJECT_DIR$/typechecking/languages/jetbrains.mps.baseLanguageExt/jetbrains.mps.baseLanguageExt.mpl" folder="typechecking.baseLanguageExt" />
<modulePath path="$PROJECT_DIR$/typechecking/languages/jetbrains.mps.lang.smodel.types/jetbrains.mps.lang.smodel.types.mpl" folder="typechecking" />
<modulePath path="$PROJECT_DIR$/typechecking/languages/jetbrains.mps.lang.typechecking/jetbrains.mps.lang.typechecking.mpl" folder="typechecking" />
<modulePath path="$PROJECT_DIR$/typechecking/languages/jetbrains.mps.typechecking.annotation/jetbrains.mps.typechecking.annotation.mpl" folder="typechecking.annotation" />
<modulePath path="$PROJECT_DIR$/typechecking/languages/jetbrains.mps.typechecking.testlang/jetbrains.mps.typechecking.testlang.mpl" folder="typechecking.test" />
<modulePath path="$PROJECT_DIR$/typechecking/solutions/jetbrains.mps.baseLanguageExt.test/jetbrains.mps.baseLanguageExt.test.msd" folder="typechecking.baseLanguageExt" />
<modulePath path="$PROJECT_DIR$/typechecking/solutions/jetbrains.mps.lang.typechecking.runtime/jetbrains.mps.lang.typechecking.runtime.msd" folder="typechecking" />
<modulePath path="$PROJECT_DIR$/typechecking/solutions/jetbrains.mps.typechecking.build/jetbrains.mps.typechecking.build.msd" folder="build" />
<modulePath path="$PROJECT_DIR$/typechecking/solutions/jetbrains.mps.typechecking.reporting/jetbrains.mps.typechecking.reporting.msd" folder="typechecking" />
<modulePath path="$PROJECT_DIR$/typechecking/solutions/jetbrains.mps.typechecking.sample.test/jetbrains.mps.typechecking.sample.test.msd" folder="typechecking.test" />

992
build.xml

File diff suppressed because it is too large Load Diff

View File

@ -337,7 +337,6 @@
<child id="1169669152123" name="generatorMessage" index="1lHHLF" />
</concept>
<concept id="1112730859144" name="jetbrains.mps.lang.generator.structure.TemplateSwitch" flags="ig" index="jVnub">
<reference id="1112820671508" name="modifiedSwitch" index="phYkn" />
<child id="1226355936225" name="nullInputMessage" index="28wCFW" />
<child id="1168558750579" name="defaultConsequence" index="jxRDz" />
<child id="1167340453568" name="reductionMappingRule" index="3aUrZf" />
@ -461,11 +460,6 @@
<child id="1199569916463" name="body" index="1bW5cS" />
</concept>
</language>
<language id="69b8a993-9b87-4d96-bf0c-3559f4bb0c63" name="jetbrains.mps.lang.slanguage">
<concept id="2030416617761226491" name="jetbrains.mps.lang.slanguage.structure.Model_IsAspectOperation" flags="nn" index="3zA4fs">
<reference id="2030416617761226680" name="aspect" index="3zA4av" />
</concept>
</language>
<language id="d7706f63-9be2-479c-a3da-ae92af1e64d5" name="jetbrains.mps.lang.generator.generationContext">
<concept id="1217889725928" name="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_SessionObjectAccess" flags="nn" index="2fSANN" />
<concept id="1217889960776" name="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_UserObjectAccessBase" flags="nn" index="2fTw9j">
@ -574,14 +568,12 @@
<child id="6733348108486823193" name="leftExpression" index="1m5AlR" />
<child id="3906496115198199033" name="conceptArgument" index="3oSUPX" />
</concept>
<concept id="1143226024141" name="jetbrains.mps.lang.smodel.structure.SModelType" flags="in" index="H_c77" />
<concept id="1145383075378" name="jetbrains.mps.lang.smodel.structure.SNodeListType" flags="in" index="2I9FWS">
<reference id="1145383142433" name="elementConcept" index="2I9WkF" />
</concept>
<concept id="1145404486709" name="jetbrains.mps.lang.smodel.structure.SemanticDowncastExpression" flags="nn" index="2JrnkZ">
<child id="1145404616321" name="leftExpression" index="2JrQYb" />
</concept>
<concept id="1212008292747" name="jetbrains.mps.lang.smodel.structure.Model_GetLongNameOperation" flags="nn" index="LkI2h" />
<concept id="1171315804604" name="jetbrains.mps.lang.smodel.structure.Model_RootsOperation" flags="nn" index="2RRcyG">
<reference id="1171315804605" name="concept" index="2RRcyH" />
</concept>
@ -626,9 +618,6 @@
<concept id="1139867745658" name="jetbrains.mps.lang.smodel.structure.Node_ReplaceWithNewOperation" flags="nn" index="1_qnLN">
<reference id="1139867957129" name="concept" index="1_rbq0" />
</concept>
<concept id="1219352745532" name="jetbrains.mps.lang.smodel.structure.NodeRefExpression" flags="nn" index="3B5_sB">
<reference id="1219352800908" name="referentNode" index="3B5MYn" />
</concept>
<concept id="1144195091934" name="jetbrains.mps.lang.smodel.structure.Node_IsRoleOperation" flags="nn" index="1BlSNk">
<reference id="1144195362400" name="conceptOfParent" index="1BmUXE" />
<reference id="1144195396777" name="linkInParent" index="1Bn3mz" />
@ -9517,221 +9506,6 @@
</node>
</node>
</node>
<node concept="312cEu" id="7km57PkeUQV">
<property role="TrG5h" value="AspectDescriptor" />
<property role="3GE5qa" value="aspect" />
<node concept="2tJIrI" id="2hteS6Clnqr" role="jymVt" />
<node concept="3clFb_" id="2hteS6ClnqE" role="jymVt">
<property role="TrG5h" value="createMacroManifest" />
<property role="1EzhhJ" value="false" />
<node concept="3uibUv" id="2hteS6ClnqF" role="3clF45">
<ref role="3uigEE" to="psr6:2N2MQGCMVqD" resolve="AbstractMacroManifest" />
</node>
<node concept="3Tm1VV" id="2hteS6ClnqG" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6ClnqI" role="3clF47">
<node concept="3clFbF" id="2hteS6ClnLM" role="3cqZAp">
<node concept="2ShNRf" id="2hteS6ClnLK" role="3clFbG">
<node concept="HV5vD" id="2hteS6Cls$Q" role="2ShVmc">
<ref role="HV5vE" node="2N2MQGCMVs3" resolve="MacroManifest" />
<node concept="1ZhdrF" id="2hteS6ClsBX" role="lGtFl">
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/2820489544401957797/2820489544401957798" />
<property role="2qtEX8" value="classifier" />
<node concept="3$xsQk" id="2hteS6ClsBY" role="3$ytzL">
<node concept="3clFbS" id="2hteS6ClsBZ" role="2VODD2">
<node concept="3clFbF" id="2hteS6ClsJ4" role="3cqZAp">
<node concept="2OqwBi" id="2hteS6ClsW_" role="3clFbG">
<node concept="1iwH7S" id="2hteS6ClsJ3" role="2Oq$k0" />
<node concept="1iwH7d" id="2hteS6Clt6M" role="2OqNvi">
<ref role="1iwH7c" node="2hteS6ClwZa" resolve="macroManifest" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1W57fq" id="2hteS6ClCHe" role="lGtFl">
<node concept="3IZrLx" id="2hteS6ClCHg" role="3IZSJc">
<node concept="3clFbS" id="2hteS6ClCHi" role="2VODD2">
<node concept="3clFbF" id="2hteS6ClCRa" role="3cqZAp">
<node concept="2OqwBi" id="2hteS6ClCRb" role="3clFbG">
<node concept="2OqwBi" id="2hteS6ClCRc" role="2Oq$k0">
<node concept="2OqwBi" id="2hteS6ClCRd" role="2Oq$k0">
<node concept="1iwH7S" id="2hteS6ClCRe" role="2Oq$k0" />
<node concept="1r8y6K" id="2hteS6ClCRf" role="2OqNvi" />
</node>
<node concept="2RRcyG" id="2hteS6ClCRg" role="2OqNvi">
<ref role="2RRcyH" to="wq2x:1pPth$m5B4X" resolve="MacroTable" />
</node>
</node>
<node concept="3GX2aA" id="2hteS6ClCRh" role="2OqNvi" />
</node>
</node>
<node concept="3clFbF" id="6DOfTmzYEg5" role="3cqZAp">
<node concept="2OqwBi" id="6DOfTmzYEg6" role="3clFbG">
<node concept="2OqwBi" id="6DOfTmzYEg7" role="2Oq$k0">
<node concept="2OqwBi" id="6DOfTmzYEg8" role="2Oq$k0">
<node concept="1iwH7S" id="6DOfTmzYEg9" role="2Oq$k0" />
<node concept="1r8y6K" id="6DOfTmzYEga" role="2OqNvi" />
</node>
<node concept="2RRcyG" id="6DOfTmzYEgb" role="2OqNvi">
<ref role="2RRcyH" to="wq2x:1pPth$m5B4X" resolve="MacroTable" />
</node>
</node>
<node concept="3GX2aA" id="6DOfTmzYEgc" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="gft3U" id="2hteS6ClDd9" role="UU_$l">
<node concept="10Nm6u" id="2hteS6ClDjc" role="gfFT$" />
</node>
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="2hteS6ClnqJ" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="2hteS6ClnBr" role="jymVt" />
<node concept="3clFb_" id="2hteS6ClnqM" role="jymVt">
<property role="TrG5h" value="createRuleManifest" />
<property role="1EzhhJ" value="false" />
<node concept="3uibUv" id="2hteS6ClnqN" role="3clF45">
<ref role="3uigEE" to="i348:4OKkcnfu_xe" resolve="AbstractRuleTemplateManifest" />
</node>
<node concept="3Tm1VV" id="2hteS6ClnqO" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6ClnqQ" role="3clF47">
<node concept="3clFbF" id="2hteS6ClDlw" role="3cqZAp">
<node concept="2ShNRf" id="7P_FdVQ4vqS" role="3clFbG">
<node concept="HV5vD" id="7P_FdVQ4vqT" role="2ShVmc">
<ref role="HV5vE" node="6w6CYIRhmZ8" resolve="RuleTemplateManifest" />
<node concept="1ZhdrF" id="7P_FdVQ4vqU" role="lGtFl">
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/2820489544401957797/2820489544401957798" />
<property role="2qtEX8" value="classifier" />
<node concept="3$xsQk" id="7P_FdVQ4vqV" role="3$ytzL">
<node concept="3clFbS" id="7P_FdVQ4vqW" role="2VODD2">
<node concept="3clFbF" id="7P_FdVQ4vqX" role="3cqZAp">
<node concept="2OqwBi" id="7P_FdVQ4vqY" role="3clFbG">
<node concept="1iwH7S" id="7P_FdVQ4vqZ" role="2Oq$k0" />
<node concept="1iwH7d" id="7P_FdVQ4vr0" role="2OqNvi">
<ref role="1iwH7c" node="2hteS6ClFWV" resolve="rule_manifest" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1W57fq" id="7P_FdVQ4vr1" role="lGtFl">
<node concept="3IZrLx" id="7P_FdVQ4vr2" role="3IZSJc">
<node concept="3clFbS" id="7P_FdVQ4vr3" role="2VODD2">
<node concept="3clFbF" id="7P_FdVQ4vr4" role="3cqZAp">
<node concept="2OqwBi" id="7P_FdVQ4vr5" role="3clFbG">
<node concept="2OqwBi" id="7P_FdVQ4vr6" role="2Oq$k0">
<node concept="2OqwBi" id="7P_FdVQ4vr7" role="2Oq$k0">
<node concept="1iwH7S" id="7P_FdVQ4vr8" role="2Oq$k0" />
<node concept="1r8y6K" id="7P_FdVQ4vr9" role="2OqNvi" />
</node>
<node concept="2SmgA7" id="7P_FdVQ4vra" role="2OqNvi">
<node concept="chp4Y" id="7P_FdVQ4vrb" role="1dBWTz">
<ref role="cht4Q" to="wq2x:7eGEHDlgPKk" resolve="Handler" />
</node>
</node>
</node>
<node concept="3GX2aA" id="7P_FdVQ4vrc" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="gft3U" id="7P_FdVQ4vrd" role="UU_$l">
<node concept="10Nm6u" id="7P_FdVQ4vre" role="gfFT$" />
</node>
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="2hteS6ClnqR" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="7km57PkeXwk" role="jymVt" />
<node concept="3Tm1VV" id="7km57PkeUQW" role="1B3o_S" />
<node concept="n94m4" id="7km57PkeUQX" role="lGtFl" />
<node concept="3uibUv" id="7km57PkeXvQ" role="EKbjA">
<ref role="3uigEE" to="ze1i:~ILanguageAspect" resolve="ILanguageAspect" />
</node>
<node concept="3uibUv" id="7km57Pkjxve" role="1zkMxy">
<ref role="3uigEE" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
</node>
</node>
<node concept="bUwia" id="7km57PkeXwx">
<property role="TrG5h" value="aspect" />
<property role="3GE5qa" value="aspect" />
<node concept="2VPoh5" id="7km57PkeXwI" role="2VS0gm">
<ref role="2VPoh2" node="7km57PkeUQV" resolve="AspectDescriptor" />
<node concept="2VP$b9" id="7km57PkeXwK" role="2VPoh3">
<node concept="3clFbS" id="7km57PkeXwL" role="2VODD2">
<node concept="3clFbF" id="7km57PkeXBU" role="3cqZAp">
<node concept="2OqwBi" id="7km57PkeYm$" role="3clFbG">
<node concept="2OqwBi" id="7km57PkeXPH" role="2Oq$k0">
<node concept="1iwH7S" id="7km57PkeXBT" role="2Oq$k0" />
<node concept="1st3f0" id="7km57PkeY4N" role="2OqNvi" />
</node>
<node concept="3zA4fs" id="7km57PkeZxH" role="2OqNvi">
<ref role="3zA4av" to="nzob:7km57PkcIgQ" resolve="types" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="jVnub" id="7km57PkguX9">
<property role="TrG5h" value="aspect_descriptor" />
<property role="3GE5qa" value="aspect" />
<ref role="phYkn" to="ucur:1KHvivZJsL7" resolve="InstantiateAspectDescriptor" />
<node concept="3aamgX" id="7km57PkgvmN" role="3aUrZf">
<property role="36QftV" value="true" />
<ref role="30HIoZ" to="hypd:5xDtKQA7vSB" resolve="ModelReference" />
<node concept="j$656" id="7km57Pkgww4" role="1lVwrX">
<ref role="v9R2y" to="ba7m:4WrOGsLZ$AX" resolve="GeneratedClassInstantiation" />
<node concept="3cpWs3" id="2aiW7BvqBQ" role="v9R3O">
<node concept="2OqwBi" id="7km57Pkgw_v" role="3uHU7B">
<node concept="v3LJS" id="7km57Pkgwwc" role="2Oq$k0">
<ref role="v3LJV" node="7km57Pkgvk2" resolve="model" />
</node>
<node concept="LkI2h" id="7km57PkgwKW" role="2OqNvi" />
</node>
<node concept="Xl_RD" id="2aiW7Bvrvo" role="3uHU7w">
<property role="Xl_RC" value=".AspectDescriptor" />
</node>
</node>
<node concept="3B5_sB" id="2hteS6Cje6U" role="v9R3O">
<ref role="3B5MYn" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
</node>
</node>
<node concept="30G5F_" id="7km57PkgvmR" role="30HLyM">
<node concept="3clFbS" id="7km57PkgvmS" role="2VODD2">
<node concept="3clFbF" id="2hteS6CjfwK" role="3cqZAp">
<node concept="2OqwBi" id="7km57PkuzZJ" role="3clFbG">
<node concept="v3LJS" id="7km57PkuzZK" role="2Oq$k0">
<ref role="v3LJV" node="7km57Pkgvk2" resolve="model" />
</node>
<node concept="3zA4fs" id="7km57PkuzZL" role="2OqNvi">
<ref role="3zA4av" to="nzob:7km57PkcIgQ" resolve="types" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1N15co" id="7km57Pkgvk2" role="1s_3oS">
<property role="TrG5h" value="model" />
<node concept="H_c77" id="7km57PkgvmI" role="1N15GL" />
</node>
</node>
<node concept="13MO4I" id="1GNw78$HcGL">
<property role="3GE5qa" value="macro" />
<property role="TrG5h" value="frag_MacroTable_MacroTemplate" />
@ -15674,5 +15448,187 @@
<ref role="2rZz_L" to="tpee:fz12cDC" resolve="FieldDeclaration" />
</node>
</node>
<node concept="312cEu" id="7km57PkeUQV">
<property role="TrG5h" value="AspectDescriptor" />
<property role="3GE5qa" value="aspect" />
<node concept="2tJIrI" id="2hteS6Clnqr" role="jymVt" />
<node concept="3clFb_" id="2hteS6ClnqE" role="jymVt">
<property role="TrG5h" value="createMacroManifest" />
<property role="1EzhhJ" value="false" />
<node concept="3uibUv" id="2hteS6ClnqF" role="3clF45">
<ref role="3uigEE" to="psr6:2N2MQGCMVqD" resolve="AbstractMacroManifest" />
</node>
<node concept="3Tm1VV" id="2hteS6ClnqG" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6ClnqI" role="3clF47">
<node concept="3cpWs6" id="NKt6ynYfGx" role="3cqZAp">
<node concept="2ShNRf" id="NKt6ynYfSC" role="3cqZAk">
<node concept="HV5vD" id="NKt6ynYfSD" role="2ShVmc">
<ref role="HV5vE" node="2N2MQGCMVs3" resolve="MacroManifest" />
<node concept="1ZhdrF" id="NKt6ynYfSE" role="lGtFl">
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/2820489544401957797/2820489544401957798" />
<property role="2qtEX8" value="classifier" />
<node concept="3$xsQk" id="NKt6ynYfSF" role="3$ytzL">
<node concept="3clFbS" id="NKt6ynYfSG" role="2VODD2">
<node concept="3clFbF" id="NKt6ynYfSH" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynYfSI" role="3clFbG">
<node concept="1iwH7S" id="NKt6ynYfSJ" role="2Oq$k0" />
<node concept="1iwH7d" id="NKt6ynYfSK" role="2OqNvi">
<ref role="1iwH7c" node="2hteS6ClwZa" resolve="macroManifest" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1W57fq" id="NKt6ynYfSL" role="lGtFl">
<node concept="3IZrLx" id="NKt6ynYfSM" role="3IZSJc">
<node concept="3clFbS" id="NKt6ynYfSN" role="2VODD2">
<node concept="3clFbF" id="NKt6ynYfSO" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynYfSP" role="3clFbG">
<node concept="2OqwBi" id="NKt6ynYfSQ" role="2Oq$k0">
<node concept="2OqwBi" id="NKt6ynYfSR" role="2Oq$k0">
<node concept="1iwH7S" id="NKt6ynYfSS" role="2Oq$k0" />
<node concept="1r8y6K" id="NKt6ynYfST" role="2OqNvi" />
</node>
<node concept="2RRcyG" id="NKt6ynYfSU" role="2OqNvi">
<ref role="2RRcyH" to="wq2x:1pPth$m5B4X" resolve="MacroTable" />
</node>
</node>
<node concept="3GX2aA" id="NKt6ynYfSV" role="2OqNvi" />
</node>
</node>
<node concept="3clFbF" id="NKt6ynYfSW" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynYfSX" role="3clFbG">
<node concept="2OqwBi" id="NKt6ynYfSY" role="2Oq$k0">
<node concept="2OqwBi" id="NKt6ynYfSZ" role="2Oq$k0">
<node concept="1iwH7S" id="NKt6ynYfT0" role="2Oq$k0" />
<node concept="1r8y6K" id="NKt6ynYfT1" role="2OqNvi" />
</node>
<node concept="2RRcyG" id="NKt6ynYfT2" role="2OqNvi">
<ref role="2RRcyH" to="wq2x:1pPth$m5B4X" resolve="MacroTable" />
</node>
</node>
<node concept="3GX2aA" id="NKt6ynYfT3" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="gft3U" id="NKt6ynYfT4" role="UU_$l">
<node concept="10Nm6u" id="NKt6ynYfT5" role="gfFT$" />
</node>
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="2hteS6ClnqJ" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="2hteS6ClnBr" role="jymVt" />
<node concept="3clFb_" id="2hteS6ClnqM" role="jymVt">
<property role="TrG5h" value="createRuleManifest" />
<property role="1EzhhJ" value="false" />
<node concept="3uibUv" id="2hteS6ClnqN" role="3clF45">
<ref role="3uigEE" to="i348:4OKkcnfu_xe" resolve="AbstractRuleTemplateManifest" />
</node>
<node concept="3Tm1VV" id="2hteS6ClnqO" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6ClnqQ" role="3clF47">
<node concept="3cpWs6" id="NKt6ynYgs8" role="3cqZAp">
<node concept="2ShNRf" id="NKt6ynYgyH" role="3cqZAk">
<node concept="HV5vD" id="NKt6ynYgyI" role="2ShVmc">
<ref role="HV5vE" node="6w6CYIRhmZ8" resolve="RuleTemplateManifest" />
<node concept="1ZhdrF" id="NKt6ynYgyJ" role="lGtFl">
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/2820489544401957797/2820489544401957798" />
<property role="2qtEX8" value="classifier" />
<node concept="3$xsQk" id="NKt6ynYgyK" role="3$ytzL">
<node concept="3clFbS" id="NKt6ynYgyL" role="2VODD2">
<node concept="3clFbF" id="NKt6ynYgyM" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynYgyN" role="3clFbG">
<node concept="1iwH7S" id="NKt6ynYgyO" role="2Oq$k0" />
<node concept="1iwH7d" id="NKt6ynYgyP" role="2OqNvi">
<ref role="1iwH7c" node="2hteS6ClFWV" resolve="rule_manifest" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1W57fq" id="NKt6ynYgyQ" role="lGtFl">
<node concept="3IZrLx" id="NKt6ynYgyR" role="3IZSJc">
<node concept="3clFbS" id="NKt6ynYgyS" role="2VODD2">
<node concept="3clFbF" id="NKt6ynYgyT" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynYgyU" role="3clFbG">
<node concept="2OqwBi" id="NKt6ynYgyV" role="2Oq$k0">
<node concept="2OqwBi" id="NKt6ynYgyW" role="2Oq$k0">
<node concept="1iwH7S" id="NKt6ynYgyX" role="2Oq$k0" />
<node concept="1r8y6K" id="NKt6ynYgyY" role="2OqNvi" />
</node>
<node concept="2SmgA7" id="NKt6ynYgyZ" role="2OqNvi">
<node concept="chp4Y" id="NKt6ynYgz0" role="1dBWTz">
<ref role="cht4Q" to="wq2x:7eGEHDlgPKk" resolve="Handler" />
</node>
</node>
</node>
<node concept="3GX2aA" id="NKt6ynYgz1" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="gft3U" id="NKt6ynYgz2" role="UU_$l">
<node concept="10Nm6u" id="NKt6ynYgz3" role="gfFT$" />
</node>
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="2hteS6ClnqR" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="7km57PkeXwk" role="jymVt" />
<node concept="3Tm1VV" id="7km57PkeUQW" role="1B3o_S" />
<node concept="n94m4" id="7km57PkeUQX" role="lGtFl" />
<node concept="3uibUv" id="NKt6yoCeXM" role="EKbjA">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
<node concept="17Uvod" id="NKt6ynQUyX" role="lGtFl">
<property role="P4ACc" value="ceab5195-25ea-4f22-9b92-103b95ca8c0c/1169194658468/1169194664001" />
<property role="2qtEX9" value="name" />
<node concept="3zFVjK" id="NKt6ynQUyY" role="3zH0cK">
<node concept="3clFbS" id="NKt6ynQUyZ" role="2VODD2">
<node concept="3clFbF" id="NKt6yobddP" role="3cqZAp">
<node concept="3cpWs3" id="NKt6yobexy" role="3clFbG">
<node concept="3zGtF$" id="NKt6yobeK7" role="3uHU7w" />
<node concept="2YIFZM" id="NKt6yobdr_" role="3uHU7B">
<ref role="37wK5l" to="18ew:~NameUtil.capitalize(java.lang.String):java.lang.String" resolve="capitalize" />
<ref role="1Pybhc" to="18ew:~NameUtil" resolve="NameUtil" />
<node concept="2OqwBi" id="NKt6yoeFjY" role="37wK5m">
<node concept="2OqwBi" id="NKt6yoeDy6" role="2Oq$k0">
<node concept="2JrnkZ" id="NKt6yoeDaY" role="2Oq$k0">
<node concept="2OqwBi" id="NKt6yobdCK" role="2JrQYb">
<node concept="1iwH7S" id="NKt6yobdCL" role="2Oq$k0" />
<node concept="1st3f0" id="NKt6yobdCM" role="2OqNvi" />
</node>
</node>
<node concept="liA8E" id="NKt6yoeEWw" role="2OqNvi">
<ref role="37wK5l" to="mhbf:~SModel.getName():org.jetbrains.mps.openapi.model.SModelName" resolve="getName" />
</node>
</node>
<node concept="liA8E" id="NKt6yoeFUu" role="2OqNvi">
<ref role="37wK5l" to="mhbf:~SModelName.getSimpleName():java.lang.String" resolve="getSimpleName" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3uibUv" id="NKt6yp1FJg" role="1zkMxy">
<ref role="3uigEE" to="fqlx:NKt6yp1COZ" resolve="DefaultCoderulesAspect" />
</node>
</node>
</model>

View File

@ -70,6 +70,7 @@
<module reference="e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)" version="0" />
<module reference="a247e09e-2435-45ba-b8d2-07e93feba96a(jetbrains.mps.baseLanguage.tuples)" version="0" />
<module reference="df345b11-b8c7-4213-ac66-48d2a9b75d88(jetbrains.mps.baseLanguageInternal)" version="0" />
<module reference="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c(jetbrains.mps.coderules)" version="0" />
<module reference="942985d5-7bcf-46ee-8b79-7b662eaebb4e(jetbrains.mps.dataform)" version="0" />
<module reference="2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)" version="0" />
<module reference="e45a8b22-94f2-427f-b849-77f254c4eef5(jetbrains.mps.lang.aspect#3274906159125927726)" version="0" />

View File

@ -11,30 +11,6 @@
<import index="lui2" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.module(MPS.OpenAPI/)" />
<import index="5zyv" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.util.concurrent(JDK/)" />
</imports>
<registry>
<language id="f159adf4-3c93-40f9-9c5a-1f245a8697af" name="jetbrains.mps.lang.aspect">
<concept id="3433054418424672374" name="jetbrains.mps.lang.aspect.structure.SimpleLanguageAspectDescriptor" flags="ng" index="3vrhyV">
<child id="6106419185511570295" name="mainLanguages" index="QG$2i" />
</concept>
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="3542851458883438784" name="jetbrains.mps.lang.smodel.structure.LanguageId" flags="nn" index="2V$Bhx">
<property id="3542851458883439831" name="namespace" index="2V$B1Q" />
<property id="3542851458883439832" name="languageId" index="2V$B1T" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
</registry>
<node concept="3vrhyV" id="7km57PkcIgQ">
<property role="TrG5h" value="types" />
<node concept="2V$Bhx" id="7km57PkcIgS" role="QG$2i">
<property role="2V$B1T" value="c4803b19-6d89-4a3b-bf82-390769514add" />
<property role="2V$B1Q" value="jetbrains.mps.lang.typesystem2" />
</node>
</node>
<registry />
</model>

View File

@ -15,6 +15,7 @@
<dependency reexport="false">6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)</dependency>
<dependency reexport="false">da80355b-a098-4248-9ec8-70d10dd7e9af(jetbrains.mps.typechecking.reporting)</dependency>
<dependency reexport="false">ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)</dependency>
<dependency reexport="false">f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="6" />
@ -40,6 +41,7 @@
<module reference="26e8f4ce-2a35-4f44-8065-e5ba154b18e9(jetbrains.mps.lang.coderules.runtime)" version="0" />
<module reference="ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)" version="0" />
<module reference="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" version="0" />
<module reference="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)" version="0" />
<module reference="bbf5c548-7111-4a53-a117-cdefc664cf34(jetbrains.mps.logic.reactor)" version="0" />
<module reference="a5478664-6b44-4c62-a9f7-434f8aa57eee(jetbrains.mps.logic.runtime)" version="0" />
<module reference="da80355b-a098-4248-9ec8-70d10dd7e9af(jetbrains.mps.typechecking.reporting)" version="0" />

View File

@ -44,6 +44,7 @@
<import index="vndm" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel.language(MPS.Core/)" />
<import index="yt73" ref="bbf5c548-7111-4a53-a117-cdefc664cf34/java:jetbrains.mps.unification(jetbrains.mps.logic.reactor/)" />
<import index="9x2e" ref="r:0730b0d1-7e2f-4982-aac3-8069c5060a9c(jetbrains.mps.lang.typesystem2.reporting)" />
<import index="u46i" ref="r:c2760840-3210-4ad4-9e64-a2dfd53620e1(jetbrains.mps.lang.typechecking.aspect)" />
</imports>
<registry>
<language id="a247e09e-2435-45ba-b8d2-07e93feba96a" name="jetbrains.mps.baseLanguage.tuples">
@ -4732,9 +4733,9 @@
<node concept="2ShNRf" id="7DvO2M9ptMA" role="3clFbG">
<node concept="1pGfFk" id="7DvO2M9ptMB" role="2ShVmc">
<ref role="37wK5l" node="7DvO2M9VeM1" resolve="RuleProcessingSession" />
<node concept="2YIFZM" id="7P_FdVPWEK7" role="37wK5m">
<ref role="37wK5l" to="fqlx:7P_FdVPW9uU" resolve="allForModel" />
<ref role="1Pybhc" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
<node concept="2YIFZM" id="NKt6yomRVR" role="37wK5m">
<ref role="37wK5l" to="u46i:7P_FdVPW9uU" resolve="allForModel" />
<ref role="1Pybhc" to="u46i:7km57Pkjxf4" resolve="TypecheckingAspect" />
<node concept="37vLTw" id="7P_FdVPWEO8" role="37wK5m">
<ref role="3cqZAo" node="4QPCta1yZW$" resolve="model" />
</node>
@ -4809,8 +4810,8 @@
<node concept="37vLTG" id="7DvO2M9VeM8" role="3clF46">
<property role="TrG5h" value="descriptors" />
<node concept="A3Dl8" id="6UWSvq5dhn_" role="1tU5fm">
<node concept="3uibUv" id="6UWSvq5dhnB" role="A3Ik2">
<ref role="3uigEE" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
<node concept="3uibUv" id="NKt6yoT9YX" role="A3Ik2">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
@ -4823,8 +4824,8 @@
<node concept="37vLTG" id="7DvO2M9VeMe" role="3clF46">
<property role="TrG5h" value="descriptors" />
<node concept="A3Dl8" id="6UWSvq5dh__" role="1tU5fm">
<node concept="3uibUv" id="6UWSvq5dh_B" role="A3Ik2">
<ref role="3uigEE" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
<node concept="3uibUv" id="NKt6yoTa0P" role="A3Ik2">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
@ -4864,7 +4865,7 @@
</node>
</node>
<node concept="3clFbH" id="7P_FdVPGUJh" role="3cqZAp" />
<node concept="1DcWWT" id="6UWSvq5d00k" role="3cqZAp">
<node concept="2Gpval" id="NKt6yoTa7y" role="3cqZAp">
<node concept="3clFbS" id="6UWSvq5d00n" role="2LFqv$">
<node concept="3cpWs8" id="7wfdmjRl1_C" role="3cqZAp">
<node concept="3cpWsn" id="7wfdmjRl1_D" role="3cpWs9">
@ -4873,11 +4874,11 @@
<ref role="3uigEE" to="psr6:2N2MQGCMVqD" resolve="AbstractMacroManifest" />
</node>
<node concept="2OqwBi" id="7wfdmjRl1_E" role="33vP2m">
<node concept="37vLTw" id="7wfdmjRl1_F" role="2Oq$k0">
<ref role="3cqZAo" node="6UWSvq5d00o" resolve="aspect" />
<node concept="2GrUjf" id="NKt6yoTaa0" role="2Oq$k0">
<ref role="2Gs0qQ" node="NKt6yoTa9Y" resolve="aspect" />
</node>
<node concept="liA8E" id="7wfdmjRl1_G" role="2OqNvi">
<ref role="37wK5l" to="fqlx:2hteS6ClmbE" resolve="createMacroManifest" />
<ref role="37wK5l" to="fqlx:NKt6yomP6t" resolve="createMacroManifest" />
</node>
</node>
</node>
@ -4912,11 +4913,11 @@
<ref role="3uigEE" to="i348:4OKkcnfu_xe" resolve="AbstractRuleTemplateManifest" />
</node>
<node concept="2OqwBi" id="7wfdmjRl43b" role="33vP2m">
<node concept="37vLTw" id="7wfdmjRl43c" role="2Oq$k0">
<ref role="3cqZAo" node="6UWSvq5d00o" resolve="aspect" />
<node concept="2GrUjf" id="NKt6yoTaa2" role="2Oq$k0">
<ref role="2Gs0qQ" node="NKt6yoTa9Y" resolve="aspect" />
</node>
<node concept="liA8E" id="7wfdmjRl43d" role="2OqNvi">
<ref role="37wK5l" to="fqlx:2hteS6ClmfS" resolve="createRuleManifest" />
<ref role="37wK5l" to="fqlx:NKt6yomP6y" resolve="createRuleManifest" />
</node>
</node>
</node>
@ -4944,15 +4945,12 @@
</node>
</node>
</node>
<node concept="3cpWsn" id="6UWSvq5d00o" role="1Duv9x">
<property role="TrG5h" value="aspect" />
<node concept="3uibUv" id="6UWSvq5d00s" role="1tU5fm">
<ref role="3uigEE" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
</node>
</node>
<node concept="37vLTw" id="6UWSvq5d00t" role="1DdaDG">
<node concept="37vLTw" id="6UWSvq5d00t" role="2GsD0m">
<ref role="3cqZAo" node="7DvO2M9VeMe" resolve="descriptors" />
</node>
<node concept="2GrKxI" id="NKt6yoTa9Y" role="2Gsz3X">
<property role="TrG5h" value="aspect" />
</node>
</node>
<node concept="3clFbH" id="7P_FdVPGUuH" role="3cqZAp" />
<node concept="3clFbF" id="7DvO2M9VeMo" role="3cqZAp">

View File

@ -42,6 +42,7 @@
<language slang="l:c72da2b9-7cce-4447-8389-f407dc1158b7:jetbrains.mps.lang.structure" version="6" />
<language slang="l:c7fb639f-be78-4307-89b0-b5959c3fa8c8:jetbrains.mps.lang.text" version="0" />
<language slang="l:9ded098b-ad6a-4657-bfd9-48636cfe8bc3:jetbrains.mps.lang.traceable" version="0" />
<language slang="l:4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462:jetbrains.mps.lang.typechecking" version="0" />
<language slang="l:7a5dda62-9140-4668-ab76-d5ed1746f2b2:jetbrains.mps.lang.typesystem" version="1" />
<language slang="l:35320f26-77cb-4c55-be9f-a97a27770af1:jetbrains.mps.logic" version="2" />
</languageVersions>
@ -53,6 +54,7 @@
<module reference="f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)" version="0" />
<module reference="e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)" version="0" />
<module reference="0fda14cc-a416-4c81-869a-2175d8b3325d(jetbrains.mps.baseLanguageExt)" version="0" />
<module reference="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c(jetbrains.mps.coderules)" version="0" />
<module reference="2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)" version="0" />
<module reference="26e8f4ce-2a35-4f44-8065-e5ba154b18e9(jetbrains.mps.lang.coderules.runtime)" version="0" />
<module reference="ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)" version="0" />

View File

@ -17,6 +17,8 @@
<use id="760a0a8c-eabb-4521-8bfd-65db761a9ba3" name="jetbrains.mps.baseLanguage.logging" version="0" />
<use id="cba985fe-1e96-4f16-9f8d-b07434405d4f" name="jetbrains.mps.lang.smodel.types" version="0" />
<use id="942985d5-7bcf-46ee-8b79-7b662eaebb4e" name="jetbrains.mps.dataform" version="0" />
<use id="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462" name="jetbrains.mps.lang.typechecking" version="0" />
<engage id="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462" name="jetbrains.mps.lang.typechecking" />
</languages>
<imports>
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" />

View File

@ -0,0 +1,184 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:38071b08-e9ac-4ec1-a326-62b7897beb22(main@generator)">
<persistence version="9" />
<languages>
<use id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage" version="6" />
<use id="b401a680-8325-4110-8fd3-84331ff25bef" name="jetbrains.mps.lang.generator" version="0" />
<use id="d7706f63-9be2-479c-a3da-ae92af1e64d5" name="jetbrains.mps.lang.generator.generationContext" version="0" />
<use id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel" version="11" />
<use id="83888646-71ce-4f1c-9c53-c54016f6ad4f" name="jetbrains.mps.baseLanguage.collections" version="0" />
<use id="69b8a993-9b87-4d96-bf0c-3559f4bb0c63" name="jetbrains.mps.lang.slanguage" version="0" />
<devkit ref="a2eb3a43-fcc2-4200-80dc-c60110c4862d(jetbrains.mps.devkit.templates)" />
</languages>
<imports>
<import index="zfi7" ref="r:39840d4e-f61c-4452-88c5-75b1eb10e892(jetbrains.mps.lang.typechecking.structure)" />
<import index="psr6" ref="r:ce187d46-c94b-47d6-8d77-26aa6af239e8(jetbrains.mps.lang.coderules.macro)" />
<import index="ogv8" ref="r:c0702ee3-be79-48ac-aa39-b7cd0d895de6(jetbrains.mps.lang.coderules.generator.template.main@generator)" />
<import index="wq2x" ref="r:83137295-aa87-45e8-b0c0-ede2adf2a396(jetbrains.mps.lang.coderules.structure)" />
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" />
<import index="i348" ref="r:42a15dec-83a9-4fe1-80d6-3bf898c512bd(jetbrains.mps.lang.coderules.template)" />
<import index="ze1i" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel.runtime(MPS.Core/)" />
<import index="fqlx" ref="r:2cc226a9-8a78-4010-b962-823343fd28ff(jetbrains.mps.lang.coderules.aspect)" />
<import index="cmcw" ref="r:def76fd6-1aa7-4c6c-9d77-632f565496a5(jetbrains.mps.lang.typechecking.plugin)" />
<import index="ucur" ref="r:1dfaf07d-c77a-451e-91d3-b6f80f0f8508(jetbrains.mps.lang.descriptor.generator.template.main@generator)" />
<import index="hypd" ref="r:aa31e43e-9240-4f4d-b6db-5c1c9a86c59e(jetbrains.mps.lang.project.structure)" />
<import index="ba7m" ref="r:4c5ac278-3ad7-4902-ab86-6c60b350f168(jetbrains.mps.lang.aspect.generator.template.main@generator)" />
<import index="u46i" ref="r:c2760840-3210-4ad4-9e64-a2dfd53620e1(jetbrains.mps.lang.typechecking.aspect)" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
<child id="1197027771414" name="operand" index="2Oq$k0" />
<child id="1197027833540" name="operation" index="2OqNvi" />
</concept>
<concept id="1137021947720" name="jetbrains.mps.baseLanguage.structure.ConceptFunction" flags="in" index="2VMwT0">
<child id="1137022507850" name="body" index="2VODD2" />
</concept>
<concept id="1070475926800" name="jetbrains.mps.baseLanguage.structure.StringLiteral" flags="nn" index="Xl_RD">
<property id="1070475926801" name="value" index="Xl_RC" />
</concept>
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068581242875" name="jetbrains.mps.baseLanguage.structure.PlusExpression" flags="nn" index="3cpWs3" />
<concept id="1081773326031" name="jetbrains.mps.baseLanguage.structure.BinaryOperation" flags="nn" index="3uHJSO">
<child id="1081773367579" name="rightExpression" index="3uHU7w" />
<child id="1081773367580" name="leftExpression" index="3uHU7B" />
</concept>
</language>
<language id="b401a680-8325-4110-8fd3-84331ff25bef" name="jetbrains.mps.lang.generator">
<concept id="1095416546421" name="jetbrains.mps.lang.generator.structure.MappingConfiguration" flags="ig" index="bUwia">
<child id="1167088157977" name="createRootRule" index="2VS0gm" />
</concept>
<concept id="1168559333462" name="jetbrains.mps.lang.generator.structure.TemplateDeclarationReference" flags="ln" index="j$656" />
<concept id="1112730859144" name="jetbrains.mps.lang.generator.structure.TemplateSwitch" flags="ig" index="jVnub">
<reference id="1112820671508" name="modifiedSwitch" index="phYkn" />
<child id="1167340453568" name="reductionMappingRule" index="3aUrZf" />
</concept>
<concept id="5005282049925926521" name="jetbrains.mps.lang.generator.structure.TemplateArgumentParameterExpression" flags="nn" index="v3LJS">
<reference id="5005282049925926522" name="parameter" index="v3LJV" />
</concept>
<concept id="1722980698497626400" name="jetbrains.mps.lang.generator.structure.ITemplateCall" flags="ng" index="v9R3L">
<reference id="1722980698497626483" name="template" index="v9R2y" />
<child id="1722980698497626405" name="actualArgument" index="v9R3O" />
</concept>
<concept id="1167087469898" name="jetbrains.mps.lang.generator.structure.CreateRootRule" flags="lg" index="2VPoh5">
<reference id="1167087469901" name="templateNode" index="2VPoh2" />
<child id="1167087469900" name="conditionFunction" index="2VPoh3" />
</concept>
<concept id="1167087518662" name="jetbrains.mps.lang.generator.structure.CreateRootRule_Condition" flags="in" index="2VP$b9" />
<concept id="1167168920554" name="jetbrains.mps.lang.generator.structure.BaseMappingRule_Condition" flags="in" index="30G5F_" />
<concept id="1167169308231" name="jetbrains.mps.lang.generator.structure.BaseMappingRule" flags="ng" index="30H$t8">
<property id="1167272244852" name="applyToConceptInheritors" index="36QftV" />
<reference id="1167169349424" name="applicableConcept" index="30HIoZ" />
<child id="1167169362365" name="conditionFunction" index="30HLyM" />
</concept>
<concept id="1167327847730" name="jetbrains.mps.lang.generator.structure.Reduction_MappingRule" flags="lg" index="3aamgX">
<child id="1169672767469" name="ruleConsequence" index="1lVwrX" />
</concept>
<concept id="982871510064032177" name="jetbrains.mps.lang.generator.structure.IParameterizedTemplate" flags="ng" index="1s_3nv">
<child id="982871510064032342" name="parameter" index="1s_3oS" />
</concept>
<concept id="1805153994415891174" name="jetbrains.mps.lang.generator.structure.TemplateParameterDeclaration" flags="ng" index="1N15co">
<child id="1805153994415893199" name="type" index="1N15GL" />
</concept>
</language>
<language id="69b8a993-9b87-4d96-bf0c-3559f4bb0c63" name="jetbrains.mps.lang.slanguage">
<concept id="2030416617761226491" name="jetbrains.mps.lang.slanguage.structure.Model_IsAspectOperation" flags="nn" index="3zA4fs">
<reference id="2030416617761226680" name="aspect" index="3zA4av" />
</concept>
</language>
<language id="d7706f63-9be2-479c-a3da-ae92af1e64d5" name="jetbrains.mps.lang.generator.generationContext">
<concept id="1216860049635" name="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" flags="nn" index="1iwH7S" />
<concept id="1217026863835" name="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOriginalInputModel" flags="nn" index="1st3f0" />
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="1143226024141" name="jetbrains.mps.lang.smodel.structure.SModelType" flags="in" index="H_c77" />
<concept id="1212008292747" name="jetbrains.mps.lang.smodel.structure.Model_GetLongNameOperation" flags="nn" index="LkI2h" />
<concept id="1219352745532" name="jetbrains.mps.lang.smodel.structure.NodeRefExpression" flags="nn" index="3B5_sB">
<reference id="1219352800908" name="referentNode" index="3B5MYn" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<property id="1193676396447" name="virtualPackage" index="3GE5qa" />
</concept>
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
</registry>
<node concept="bUwia" id="NKt6ynvIZQ">
<property role="TrG5h" value="main" />
</node>
<node concept="jVnub" id="7km57PkguX9">
<property role="TrG5h" value="aspect_descriptor" />
<property role="3GE5qa" value="aspect" />
<ref role="phYkn" to="ucur:1KHvivZJsL7" resolve="InstantiateAspectDescriptor" />
<node concept="3aamgX" id="7km57PkgvmN" role="3aUrZf">
<property role="36QftV" value="true" />
<ref role="30HIoZ" to="hypd:5xDtKQA7vSB" resolve="ModelReference" />
<node concept="j$656" id="7km57Pkgww4" role="1lVwrX">
<ref role="v9R2y" to="ba7m:4WrOGsLZ$AX" resolve="GeneratedClassInstantiation" />
<node concept="3cpWs3" id="2aiW7BvqBQ" role="v9R3O">
<node concept="2OqwBi" id="7km57Pkgw_v" role="3uHU7B">
<node concept="v3LJS" id="7km57Pkgwwc" role="2Oq$k0">
<ref role="v3LJV" node="7km57Pkgvk2" resolve="model" />
</node>
<node concept="LkI2h" id="7km57PkgwKW" role="2OqNvi" />
</node>
<node concept="Xl_RD" id="2aiW7Bvrvo" role="3uHU7w">
<property role="Xl_RC" value=".TypesAspectDescriptor" />
</node>
</node>
<node concept="3B5_sB" id="2hteS6Cje6U" role="v9R3O">
<ref role="3B5MYn" to="fqlx:NKt6yp1COZ" resolve="DefaultCoderulesAspect" />
</node>
</node>
<node concept="30G5F_" id="7km57PkgvmR" role="30HLyM">
<node concept="3clFbS" id="7km57PkgvmS" role="2VODD2">
<node concept="3clFbF" id="2hteS6CjfwK" role="3cqZAp">
<node concept="2OqwBi" id="7km57PkuzZJ" role="3clFbG">
<node concept="v3LJS" id="7km57PkuzZK" role="2Oq$k0">
<ref role="v3LJV" node="7km57Pkgvk2" resolve="model" />
</node>
<node concept="3zA4fs" id="7km57PkuzZL" role="2OqNvi">
<ref role="3zA4av" to="cmcw:7km57PkcIgQ" resolve="types" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1N15co" id="7km57Pkgvk2" role="1s_3oS">
<property role="TrG5h" value="model" />
<node concept="H_c77" id="7km57PkgvmI" role="1N15GL" />
</node>
</node>
<node concept="bUwia" id="7km57PkeXwx">
<property role="TrG5h" value="aspect" />
<property role="3GE5qa" value="aspect" />
<node concept="2VPoh5" id="7km57PkeXwI" role="2VS0gm">
<ref role="2VPoh2" to="ogv8:7km57PkeUQV" resolve="AspectDescriptor" />
<node concept="2VP$b9" id="7km57PkeXwK" role="2VPoh3">
<node concept="3clFbS" id="7km57PkeXwL" role="2VODD2">
<node concept="3clFbF" id="7km57PkeXBU" role="3cqZAp">
<node concept="2OqwBi" id="7km57PkeYm$" role="3clFbG">
<node concept="2OqwBi" id="7km57PkeXPH" role="2Oq$k0">
<node concept="1iwH7S" id="7km57PkeXBT" role="2Oq$k0" />
<node concept="1st3f0" id="7km57PkeY4N" role="2OqNvi" />
</node>
<node concept="3zA4fs" id="7km57PkeZxH" role="2OqNvi">
<ref role="3zA4av" to="cmcw:7km57PkcIgQ" resolve="types" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</model>

View File

@ -0,0 +1,156 @@
<?xml version="1.0" encoding="UTF-8"?>
<language namespace="jetbrains.mps.lang.typechecking" uuid="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462" languageVersion="0" moduleVersion="0">
<models>
<modelRoot contentPath="${module}" type="default">
<sourceRoot location="models" />
</modelRoot>
</models>
<accessoryModels />
<generators>
<generator alias="main" namespace="jetbrains.mps.lang.typechecking#01" uuid="685b46b0-fc2b-411e-954a-af0eeec1a29a">
<models>
<modelRoot contentPath="${module}/generator/template" type="default">
<sourceRoot location="." />
</modelRoot>
</models>
<external-templates>
<generator generatorUID="21d5540d-cd6b-44dd-b6ab-6835bf032803(jetbrains.mps.lang.coderules#4578927328670739933)" />
<generator generatorUID="3ac18869-0828-4401-abad-822a47bf83f1(jetbrains.mps.lang.descriptor#9020561928507175817)" />
</external-templates>
<dependencies>
<dependency reexport="false">ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)</dependency>
<dependency reexport="false">c4803b19-6d89-4a3b-bf82-390769514add(jetbrains.mps.lang.coderules)</dependency>
<dependency reexport="false">86ef8290-12bb-4ca7-947f-093788f263a9(jetbrains.mps.lang.project)</dependency>
<dependency reexport="false">f4ad079d-bc71-4ffb-9600-9328705cf998(jetbrains.mps.lang.descriptor)</dependency>
<dependency reexport="false">f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="6" />
<language slang="l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures" version="0" />
<language slang="l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections" version="0" />
<language slang="l:f2801650-65d5-424e-bb1b-463a8781b786:jetbrains.mps.baseLanguage.javadoc" version="2" />
<language slang="l:760a0a8c-eabb-4521-8bfd-65db761a9ba3:jetbrains.mps.baseLanguage.logging" version="0" />
<language slang="l:a247e09e-2435-45ba-b8d2-07e93feba96a:jetbrains.mps.baseLanguage.tuples" version="0" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="1" />
<language slang="l:b401a680-8325-4110-8fd3-84331ff25bef:jetbrains.mps.lang.generator" version="0" />
<language slang="l:d7706f63-9be2-479c-a3da-ae92af1e64d5:jetbrains.mps.lang.generator.generationContext" version="0" />
<language slang="l:289fcc83-6543-41e8-a5ca-768235715ce4:jetbrains.mps.lang.generator.generationParameters" version="0" />
<language slang="l:446c26eb-2b7b-4bf0-9b35-f83fa582753e:jetbrains.mps.lang.modelapi" version="0" />
<language slang="l:3a13115c-633c-4c5c-bbcc-75c4219e9555:jetbrains.mps.lang.quotation" version="0" />
<language slang="l:13744753-c81f-424a-9c1b-cf8943bf4e86:jetbrains.mps.lang.sharedConcepts" version="0" />
<language slang="l:69b8a993-9b87-4d96-bf0c-3559f4bb0c63:jetbrains.mps.lang.slanguage" version="0" />
<language slang="l:7866978e-a0f0-4cc7-81bc-4d213d9375e1:jetbrains.mps.lang.smodel" version="11" />
<language slang="l:1a8554c4-eb84-43ba-8c34-6f0d90c6e75a:jetbrains.mps.lang.smodel.query" version="3" />
<language slang="l:c7fb639f-be78-4307-89b0-b5959c3fa8c8:jetbrains.mps.lang.text" version="0" />
<language slang="l:9ded098b-ad6a-4657-bfd9-48636cfe8bc3:jetbrains.mps.lang.traceable" version="0" />
</languageVersions>
<dependencyVersions>
<module reference="3f233e7f-b8a6-46d2-a57f-795d56775243(Annotations)" version="0" />
<module reference="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" version="0" />
<module reference="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" version="0" />
<module reference="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" version="0" />
<module reference="f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)" version="0" />
<module reference="fd392034-7849-419d-9071-12563d152375(jetbrains.mps.baseLanguage.closures)" version="0" />
<module reference="83888646-71ce-4f1c-9c53-c54016f6ad4f(jetbrains.mps.baseLanguage.collections)" version="0" />
<module reference="e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)" version="0" />
<module reference="942985d5-7bcf-46ee-8b79-7b662eaebb4e(jetbrains.mps.dataform)" version="0" />
<module reference="2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)" version="0" />
<module reference="e45a8b22-94f2-427f-b849-77f254c4eef5(jetbrains.mps.lang.aspect#3274906159125927726)" version="0" />
<module reference="c4803b19-6d89-4a3b-bf82-390769514add(jetbrains.mps.lang.coderules)" version="0" />
<module reference="21d5540d-cd6b-44dd-b6ab-6835bf032803(jetbrains.mps.lang.coderules#4578927328670739933)" version="0" />
<module reference="26e8f4ce-2a35-4f44-8065-e5ba154b18e9(jetbrains.mps.lang.coderules.runtime)" version="0" />
<module reference="ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)" version="0" />
<module reference="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" version="0" />
<module reference="f4ad079d-bc71-4ffb-9600-9328705cf998(jetbrains.mps.lang.descriptor)" version="0" />
<module reference="3ac18869-0828-4401-abad-822a47bf83f1(jetbrains.mps.lang.descriptor#9020561928507175817)" version="0" />
<module reference="446c26eb-2b7b-4bf0-9b35-f83fa582753e(jetbrains.mps.lang.modelapi)" version="0" />
<module reference="86ef8290-12bb-4ca7-947f-093788f263a9(jetbrains.mps.lang.project)" version="0" />
<module reference="7866978e-a0f0-4cc7-81bc-4d213d9375e1(jetbrains.mps.lang.smodel)" version="1" />
<module reference="9ded098b-ad6a-4657-bfd9-48636cfe8bc3(jetbrains.mps.lang.traceable)" version="0" />
<module reference="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462(jetbrains.mps.lang.typechecking)" version="0" />
<module reference="685b46b0-fc2b-411e-954a-af0eeec1a29a(jetbrains.mps.lang.typechecking#01)" version="0" />
<module reference="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)" version="0" />
<module reference="b19b2d23-1869-41e0-9ee6-8eaad9ffcd84(jetbrains.mps.lang.util.order#174635545557533742)" version="0" />
<module reference="35320f26-77cb-4c55-be9f-a97a27770af1(jetbrains.mps.logic)" version="0" />
<module reference="bbf5c548-7111-4a53-a117-cdefc664cf34(jetbrains.mps.logic.reactor)" version="0" />
<module reference="da80355b-a098-4248-9ec8-70d10dd7e9af(jetbrains.mps.typechecking.reporting)" version="0" />
</dependencyVersions>
<mapping-priorities>
<mapping-priority-rule kind="strictly_together">
<greater-priority-mapping>
<generator generatorUID="685b46b0-fc2b-411e-954a-af0eeec1a29a(jetbrains.mps.lang.typechecking#01)" />
<external-mapping>
<mapping-node modelUID="r:38071b08-e9ac-4ec1-a326-62b7897beb22(main@generator)" nodeID="*" />
</external-mapping>
</greater-priority-mapping>
<lesser-priority-mapping>
<generator generatorUID="21d5540d-cd6b-44dd-b6ab-6835bf032803(jetbrains.mps.lang.coderules#4578927328670739933)" />
<external-mapping>
<mapping-node modelUID="r:c0702ee3-be79-48ac-aa39-b7cd0d895de6(jetbrains.mps.lang.coderules.generator.template.main@generator)" nodeID="*" />
</external-mapping>
</lesser-priority-mapping>
</mapping-priority-rule>
</mapping-priorities>
</generator>
</generators>
<sourcePath />
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="6" />
<language slang="l:443f4c36-fcf5-4eb6-9500-8d06ed259e3e:jetbrains.mps.baseLanguage.classifiers" version="0" />
<language slang="l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures" version="0" />
<language slang="l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections" version="0" />
<language slang="l:f2801650-65d5-424e-bb1b-463a8781b786:jetbrains.mps.baseLanguage.javadoc" version="2" />
<language slang="l:c7d5b9dd-a05f-4be2-bc73-f2e16994cc67:jetbrains.mps.baseLanguage.lightweightdsl" version="1" />
<language slang="l:760a0a8c-eabb-4521-8bfd-65db761a9ba3:jetbrains.mps.baseLanguage.logging" version="0" />
<language slang="l:a247e09e-2435-45ba-b8d2-07e93feba96a:jetbrains.mps.baseLanguage.tuples" version="0" />
<language slang="l:aee9cad2-acd4-4608-aef2-0004f6a1cdbd:jetbrains.mps.lang.actions" version="4" />
<language slang="l:f159adf4-3c93-40f9-9c5a-1f245a8697af:jetbrains.mps.lang.aspect" version="2" />
<language slang="l:af65afd8-f0dd-4942-87d9-63a55f2a9db1:jetbrains.mps.lang.behavior" version="1" />
<language slang="l:fe9d76d7-5809-45c9-ae28-a40915b4d6ff:jetbrains.mps.lang.checkedName" version="0" />
<language slang="l:3f4bc5f5-c6c1-4a28-8b10-c83066ffa4a1:jetbrains.mps.lang.constraints" version="4" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="1" />
<language slang="l:f4ad079d-bc71-4ffb-9600-9328705cf998:jetbrains.mps.lang.descriptor" version="0" />
<language slang="l:18bc6592-03a6-4e29-a83a-7ff23bde13ba:jetbrains.mps.lang.editor" version="11" />
<language slang="l:446c26eb-2b7b-4bf0-9b35-f83fa582753e:jetbrains.mps.lang.modelapi" version="0" />
<language slang="l:d4615e3b-d671-4ba9-af01-2b78369b0ba7:jetbrains.mps.lang.pattern" version="1" />
<language slang="l:28f9e497-3b42-4291-aeba-0a1039153ab1:jetbrains.mps.lang.plugin" version="2" />
<language slang="l:3a13115c-633c-4c5c-bbcc-75c4219e9555:jetbrains.mps.lang.quotation" version="0" />
<language slang="l:982eb8df-2c96-4bd7-9963-11712ea622e5:jetbrains.mps.lang.resources" version="2" />
<language slang="l:7866978e-a0f0-4cc7-81bc-4d213d9375e1:jetbrains.mps.lang.smodel" version="11" />
<language slang="l:c72da2b9-7cce-4447-8389-f407dc1158b7:jetbrains.mps.lang.structure" version="6" />
<language slang="l:c7fb639f-be78-4307-89b0-b5959c3fa8c8:jetbrains.mps.lang.text" version="0" />
<language slang="l:9ded098b-ad6a-4657-bfd9-48636cfe8bc3:jetbrains.mps.lang.traceable" version="0" />
<language slang="l:7a5dda62-9140-4668-ab76-d5ed1746f2b2:jetbrains.mps.lang.typesystem" version="1" />
<language slang="l:c9d137c4-3259-44f8-80ff-33ab2b506ee4:jetbrains.mps.lang.util.order" version="0" />
<language slang="l:696c1165-4a59-463b-bc5d-902caab85dd0:jetbrains.mps.make.facet" version="0" />
</languageVersions>
<dependencyVersions>
<module reference="3f233e7f-b8a6-46d2-a57f-795d56775243(Annotations)" version="0" />
<module reference="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" version="0" />
<module reference="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" version="0" />
<module reference="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" version="0" />
<module reference="f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)" version="0" />
<module reference="fd392034-7849-419d-9071-12563d152375(jetbrains.mps.baseLanguage.closures)" version="0" />
<module reference="83888646-71ce-4f1c-9c53-c54016f6ad4f(jetbrains.mps.baseLanguage.collections)" version="0" />
<module reference="e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)" version="0" />
<module reference="942985d5-7bcf-46ee-8b79-7b662eaebb4e(jetbrains.mps.dataform)" version="0" />
<module reference="2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)" version="0" />
<module reference="c4803b19-6d89-4a3b-bf82-390769514add(jetbrains.mps.lang.coderules)" version="0" />
<module reference="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" version="0" />
<module reference="f4ad079d-bc71-4ffb-9600-9328705cf998(jetbrains.mps.lang.descriptor)" version="0" />
<module reference="a9e4c532-c5f5-4bb7-99ef-42abb73bbb70(jetbrains.mps.lang.descriptor.aspects)" version="0" />
<module reference="446c26eb-2b7b-4bf0-9b35-f83fa582753e(jetbrains.mps.lang.modelapi)" version="0" />
<module reference="7866978e-a0f0-4cc7-81bc-4d213d9375e1(jetbrains.mps.lang.smodel)" version="1" />
<module reference="9ded098b-ad6a-4657-bfd9-48636cfe8bc3(jetbrains.mps.lang.traceable)" version="0" />
<module reference="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462(jetbrains.mps.lang.typechecking)" version="0" />
<module reference="35320f26-77cb-4c55-be9f-a97a27770af1(jetbrains.mps.logic)" version="0" />
</dependencyVersions>
<runtime>
<dependency reexport="false">f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)</dependency>
</runtime>
<extendedLanguages>
<extendedLanguage>c4803b19-6d89-4a3b-bf82-390769514add(jetbrains.mps.lang.coderules)</extendedLanguage>
<extendedLanguage>f4ad079d-bc71-4ffb-9600-9328705cf998(jetbrains.mps.lang.descriptor)</extendedLanguage>
</extendedLanguages>
</language>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:9c80bc3e-1982-4e7d-8fe4-1b25a1c02635(jetbrains.mps.lang.typechecking.behavior)">
<persistence version="9" />
<languages>
<use id="af65afd8-f0dd-4942-87d9-63a55f2a9db1" name="jetbrains.mps.lang.behavior" version="1" />
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
</languages>
<imports />
<registry />
</model>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:681ebaa9-a068-4b8a-8251-b12d2bd76ef1(jetbrains.mps.lang.typechecking.constraints)">
<persistence version="9" />
<languages>
<use id="3f4bc5f5-c6c1-4a28-8b10-c83066ffa4a1" name="jetbrains.mps.lang.constraints" version="4" />
<devkit ref="00000000-0000-4000-0000-5604ebd4f22c(jetbrains.mps.devkit.aspect.constraints)" />
</languages>
<imports />
<registry />
</model>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:2e850586-b012-4b1a-9080-68602bc3e8c1(jetbrains.mps.lang.typechecking.editor)">
<persistence version="9" />
<languages>
<use id="18bc6592-03a6-4e29-a83a-7ff23bde13ba" name="jetbrains.mps.lang.editor" version="11" />
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
</languages>
<imports />
<registry />
</model>

View File

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:def76fd6-1aa7-4c6c-9d77-632f565496a5(jetbrains.mps.lang.typechecking.plugin)">
<persistence version="9" />
<languages>
<use id="f159adf4-3c93-40f9-9c5a-1f245a8697af" name="jetbrains.mps.lang.aspect" version="2" />
<use id="696c1165-4a59-463b-bc5d-902caab85dd0" name="jetbrains.mps.make.facet" version="0" />
<use id="28f9e497-3b42-4291-aeba-0a1039153ab1" name="jetbrains.mps.lang.plugin" version="2" />
<use id="c9d137c4-3259-44f8-80ff-33ab2b506ee4" name="jetbrains.mps.lang.util.order" version="0" />
<use id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel" version="11" />
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
</languages>
<imports />
<registry>
<language id="f159adf4-3c93-40f9-9c5a-1f245a8697af" name="jetbrains.mps.lang.aspect">
<concept id="3433054418424672374" name="jetbrains.mps.lang.aspect.structure.SimpleLanguageAspectDescriptor" flags="ng" index="3vrhyV">
<child id="6106419185511570295" name="mainLanguages" index="QG$2i" />
</concept>
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="3542851458883438784" name="jetbrains.mps.lang.smodel.structure.LanguageId" flags="nn" index="2V$Bhx">
<property id="3542851458883439831" name="namespace" index="2V$B1Q" />
<property id="3542851458883439832" name="languageId" index="2V$B1T" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
</registry>
<node concept="3vrhyV" id="7km57PkcIgQ">
<property role="TrG5h" value="types" />
<node concept="2V$Bhx" id="NKt6ynvOIJ" role="QG$2i">
<property role="2V$B1T" value="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462" />
<property role="2V$B1Q" value="jetbrains.mps.lang.typechecking" />
</node>
</node>
</model>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:39840d4e-f61c-4452-88c5-75b1eb10e892(jetbrains.mps.lang.typechecking.structure)">
<persistence version="9" />
<languages>
<use id="c72da2b9-7cce-4447-8389-f407dc1158b7" name="jetbrains.mps.lang.structure" version="6" />
<devkit ref="78434eb8-b0e5-444b-850d-e7c4ad2da9ab(jetbrains.mps.devkit.aspect.structure)" />
</languages>
<imports />
<registry />
</model>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:dbdd79b0-220d-41f0-b3ef-b9e8311cce7a(jetbrains.mps.lang.typechecking.typesystem)">
<persistence version="9" />
<languages>
<use id="7a5dda62-9140-4668-ab76-d5ed1746f2b2" name="jetbrains.mps.lang.typesystem" version="1" />
<devkit ref="00000000-0000-4000-0000-1de82b3a4936(jetbrains.mps.devkit.aspect.typesystem)" />
</languages>
<imports />
<registry />
</model>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<solution name="jetbrains.mps.lang.typechecking.runtime" uuid="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84" moduleVersion="0" compileInMPS="true">
<models>
<modelRoot contentPath="${module}" type="default">
<sourceRoot location="models" />
</modelRoot>
</models>
<sourcePath />
<dependencies>
<dependency reexport="false">8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)</dependency>
<dependency reexport="true">ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="6" />
<language slang="l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures" version="0" />
<language slang="l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections" version="0" />
<language slang="l:f2801650-65d5-424e-bb1b-463a8781b786:jetbrains.mps.baseLanguage.javadoc" version="2" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="1" />
<language slang="l:446c26eb-2b7b-4bf0-9b35-f83fa582753e:jetbrains.mps.lang.modelapi" version="0" />
<language slang="l:7866978e-a0f0-4cc7-81bc-4d213d9375e1:jetbrains.mps.lang.smodel" version="11" />
<language slang="l:9ded098b-ad6a-4657-bfd9-48636cfe8bc3:jetbrains.mps.lang.traceable" version="0" />
</languageVersions>
<dependencyVersions>
<module reference="3f233e7f-b8a6-46d2-a57f-795d56775243(Annotations)" version="0" />
<module reference="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" version="0" />
<module reference="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" version="0" />
<module reference="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" version="0" />
<module reference="ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)" version="0" />
<module reference="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)" version="0" />
<module reference="bbf5c548-7111-4a53-a117-cdefc664cf34(jetbrains.mps.logic.reactor)" version="0" />
<module reference="da80355b-a098-4248-9ec8-70d10dd7e9af(jetbrains.mps.typechecking.reporting)" version="0" />
</dependencyVersions>
</solution>

View File

@ -0,0 +1,478 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:c2760840-3210-4ad4-9e64-a2dfd53620e1(jetbrains.mps.lang.typechecking.aspect)">
<persistence version="9" />
<languages>
<use id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage" version="6" />
<use id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel" version="11" />
<use id="83888646-71ce-4f1c-9c53-c54016f6ad4f" name="jetbrains.mps.baseLanguage.collections" version="0" />
<use id="f2801650-65d5-424e-bb1b-463a8781b786" name="jetbrains.mps.baseLanguage.javadoc" version="2" />
</languages>
<imports>
<import index="c17a" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.language(MPS.OpenAPI/)" />
<import index="lui2" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.module(MPS.OpenAPI/)" />
<import index="fqlx" ref="r:2cc226a9-8a78-4010-b962-823343fd28ff(jetbrains.mps.lang.coderules.aspect)" />
<import index="vndm" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel.language(MPS.Core/)" />
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" />
<import index="psr6" ref="r:ce187d46-c94b-47d6-8d77-26aa6af239e8(jetbrains.mps.lang.coderules.macro)" />
<import index="i348" ref="r:42a15dec-83a9-4fe1-80d6-3bf898c512bd(jetbrains.mps.lang.coderules.template)" />
<import index="i5cy" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.util.concurrent.atomic(JDK/)" />
<import index="ze1i" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel.runtime(MPS.Core/)" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1202948039474" name="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" flags="nn" index="liA8E" />
<concept id="1465982738277781862" name="jetbrains.mps.baseLanguage.structure.PlaceholderMember" flags="ng" index="2tJIrI" />
<concept id="1188207840427" name="jetbrains.mps.baseLanguage.structure.AnnotationInstance" flags="nn" index="2AHcQZ">
<reference id="1188208074048" name="annotation" index="2AI5Lk" />
</concept>
<concept id="1188208481402" name="jetbrains.mps.baseLanguage.structure.HasAnnotation" flags="ng" index="2AJDlI">
<child id="1188208488637" name="annotation" index="2AJF6D" />
</concept>
<concept id="2820489544401957797" name="jetbrains.mps.baseLanguage.structure.DefaultClassCreator" flags="nn" index="HV5vD">
<reference id="2820489544401957798" name="classifier" index="HV5vE" />
</concept>
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
<child id="1197027771414" name="operand" index="2Oq$k0" />
<child id="1197027833540" name="operation" index="2OqNvi" />
</concept>
<concept id="1145552977093" name="jetbrains.mps.baseLanguage.structure.GenericNewExpression" flags="nn" index="2ShNRf">
<child id="1145553007750" name="creator" index="2ShVmc" />
</concept>
<concept id="1081236700938" name="jetbrains.mps.baseLanguage.structure.StaticMethodDeclaration" flags="ig" index="2YIFZL" />
<concept id="1070534058343" name="jetbrains.mps.baseLanguage.structure.NullLiteral" flags="nn" index="10Nm6u" />
<concept id="1068390468198" name="jetbrains.mps.baseLanguage.structure.ClassConcept" flags="ig" index="312cEu">
<property id="1075300953594" name="abstractClass" index="1sVAO0" />
<child id="1095933932569" name="implementedInterface" index="EKbjA" />
<child id="1165602531693" name="superclass" index="1zkMxy" />
</concept>
<concept id="1068431474542" name="jetbrains.mps.baseLanguage.structure.VariableDeclaration" flags="ng" index="33uBYm">
<child id="1068431790190" name="initializer" index="33vP2m" />
</concept>
<concept id="1068498886296" name="jetbrains.mps.baseLanguage.structure.VariableReference" flags="nn" index="37vLTw">
<reference id="1068581517664" name="variableDeclaration" index="3cqZAo" />
</concept>
<concept id="1068498886292" name="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" flags="ir" index="37vLTG" />
<concept id="4972933694980447171" name="jetbrains.mps.baseLanguage.structure.BaseVariableDeclaration" flags="ng" index="19Szcq">
<child id="5680397130376446158" name="type" index="1tU5fm" />
</concept>
<concept id="1068580123132" name="jetbrains.mps.baseLanguage.structure.BaseMethodDeclaration" flags="ng" index="3clF44">
<property id="4276006055363816570" name="isSynchronized" index="od$2w" />
<property id="1181808852946" name="isFinal" index="DiZV1" />
<child id="1068580123133" name="returnType" index="3clF45" />
<child id="1068580123134" name="parameter" index="3clF46" />
<child id="1068580123135" name="body" index="3clF47" />
</concept>
<concept id="1068580123165" name="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" flags="ig" index="3clFb_">
<property id="1178608670077" name="isAbstract" index="1EzhhJ" />
</concept>
<concept id="1068580123152" name="jetbrains.mps.baseLanguage.structure.EqualsExpression" flags="nn" index="3clFbC" />
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
<concept id="1068580123159" name="jetbrains.mps.baseLanguage.structure.IfStatement" flags="nn" index="3clFbJ">
<child id="1068580123160" name="condition" index="3clFbw" />
<child id="1068580123161" name="ifTrue" index="3clFbx" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068581242864" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" flags="nn" index="3cpWs8">
<child id="1068581242865" name="localVariableDeclaration" index="3cpWs9" />
</concept>
<concept id="1068581242863" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" flags="nr" index="3cpWsn" />
<concept id="1204053956946" name="jetbrains.mps.baseLanguage.structure.IMethodCall" flags="ng" index="1ndlxa">
<reference id="1068499141037" name="baseMethodDeclaration" index="37wK5l" />
<child id="1068499141038" name="actualArgument" index="37wK5m" />
</concept>
<concept id="1212685548494" name="jetbrains.mps.baseLanguage.structure.ClassCreator" flags="nn" index="1pGfFk">
<child id="1212687122400" name="typeParameter" index="1pMfVU" />
</concept>
<concept id="1107461130800" name="jetbrains.mps.baseLanguage.structure.Classifier" flags="ng" index="3pOWGL">
<property id="521412098689998745" name="nonStatic" index="2bfB8j" />
<child id="5375687026011219971" name="member" index="jymVt" unordered="true" />
</concept>
<concept id="1107535904670" name="jetbrains.mps.baseLanguage.structure.ClassifierType" flags="in" index="3uibUv">
<reference id="1107535924139" name="classifier" index="3uigEE" />
<child id="1109201940907" name="parameter" index="11_B2D" />
</concept>
<concept id="1081773326031" name="jetbrains.mps.baseLanguage.structure.BinaryOperation" flags="nn" index="3uHJSO">
<child id="1081773367579" name="rightExpression" index="3uHU7w" />
<child id="1081773367580" name="leftExpression" index="3uHU7B" />
</concept>
<concept id="1073239437375" name="jetbrains.mps.baseLanguage.structure.NotEqualsExpression" flags="nn" index="3y3z36" />
<concept id="1178549954367" name="jetbrains.mps.baseLanguage.structure.IVisible" flags="ng" index="1B3ioH">
<child id="1178549979242" name="visibility" index="1B3o_S" />
</concept>
<concept id="1146644602865" name="jetbrains.mps.baseLanguage.structure.PublicVisibility" flags="nn" index="3Tm1VV" />
<concept id="1116615150612" name="jetbrains.mps.baseLanguage.structure.ClassifierClassExpression" flags="nn" index="3VsKOn">
<reference id="1116615189566" name="classifier" index="3VsUkX" />
</concept>
</language>
<language id="f2801650-65d5-424e-bb1b-463a8781b786" name="jetbrains.mps.baseLanguage.javadoc">
<concept id="5349172909345501395" name="jetbrains.mps.baseLanguage.javadoc.structure.BaseDocComment" flags="ng" index="P$AiS">
<child id="8465538089690331502" name="body" index="TZ5H$" />
</concept>
<concept id="8465538089690331500" name="jetbrains.mps.baseLanguage.javadoc.structure.CommentLine" flags="ng" index="TZ5HA">
<child id="8970989240999019149" name="part" index="1dT_Ay" />
</concept>
<concept id="8970989240999019143" name="jetbrains.mps.baseLanguage.javadoc.structure.TextCommentLinePart" flags="ng" index="1dT_AC">
<property id="8970989240999019144" name="text" index="1dT_AB" />
</concept>
<concept id="2068944020170241612" name="jetbrains.mps.baseLanguage.javadoc.structure.ClassifierDocComment" flags="ng" index="3UR2Jj" />
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="1143226024141" name="jetbrains.mps.lang.smodel.structure.SModelType" flags="in" index="H_c77" />
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<child id="5169995583184591170" name="smodelAttribute" index="lGtFl" />
</concept>
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
<language id="83888646-71ce-4f1c-9c53-c54016f6ad4f" name="jetbrains.mps.baseLanguage.collections">
<concept id="7125221305512719026" name="jetbrains.mps.baseLanguage.collections.structure.CollectionType" flags="in" index="3vKaQO" />
<concept id="5686963296372573083" name="jetbrains.mps.baseLanguage.collections.structure.AbstractContainerType" flags="in" index="3O5elB">
<child id="5686963296372573084" name="elementType" index="3O5elw" />
</concept>
</language>
</registry>
<node concept="312cEu" id="7km57Pkjxf4">
<property role="TrG5h" value="TypecheckingAspect" />
<property role="1sVAO0" value="true" />
<node concept="2tJIrI" id="2hteS6CndfK" role="jymVt" />
<node concept="2YIFZL" id="2hteS6Cndm6" role="jymVt">
<property role="TrG5h" value="forLanguage" />
<node concept="37vLTG" id="2hteS6Cndm7" role="3clF46">
<property role="TrG5h" value="slang" />
<node concept="3uibUv" id="2hteS6Cndm8" role="1tU5fm">
<ref role="3uigEE" to="c17a:~SLanguage" resolve="SLanguage" />
</node>
</node>
<node concept="37vLTG" id="2hteS6Cndm9" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="3GlpCDS_m$F" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="NKt6yoQCF0" role="3clF45">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
<node concept="3Tm1VV" id="2hteS6Cndmc" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6Cndmd" role="3clF47">
<node concept="3clFbF" id="NKt6ynqkPu" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynqlte" role="3clFbG">
<node concept="2ShNRf" id="NKt6ynqkPq" role="2Oq$k0">
<node concept="1pGfFk" id="NKt6ynql7n" role="2ShVmc">
<ref role="37wK5l" to="fqlx:NKt6yno$sR" resolve="AspectLookup" />
<node concept="2ShNRf" id="NKt6ynql9X" role="37wK5m">
<node concept="HV5vD" id="NKt6ynqlji" role="2ShVmc">
<ref role="HV5vE" node="NKt6ynqgZw" resolve="TypecheckingAspect.CoderulesAspectDiscoverable" />
</node>
</node>
<node concept="3uibUv" id="NKt6yoQDGr" role="1pMfVU">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
<node concept="liA8E" id="NKt6ynqlFW" role="2OqNvi">
<ref role="37wK5l" to="fqlx:NKt6ynp3Wc" resolve="forLanguage" />
<node concept="37vLTw" id="NKt6ynqlMF" role="37wK5m">
<ref role="3cqZAo" node="2hteS6Cndm7" resolve="slang" />
</node>
<node concept="37vLTw" id="NKt6ynqlZL" role="37wK5m">
<ref role="3cqZAo" node="2hteS6Cndm9" resolve="repository" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="6UWSvq5bjXg" role="jymVt" />
<node concept="2YIFZL" id="7P_FdVPW9uU" role="jymVt">
<property role="TrG5h" value="allForModel" />
<node concept="37vLTG" id="7P_FdVPWb2y" role="3clF46">
<property role="TrG5h" value="model" />
<node concept="H_c77" id="7P_FdVPWp2I" role="1tU5fm" />
</node>
<node concept="37vLTG" id="7P_FdVPWb2$" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="7P_FdVPWb2_" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3vKaQO" id="7P_FdVPWaUF" role="3clF45">
<node concept="3uibUv" id="NKt6yoQCQN" role="3O5elw">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
<node concept="3Tm1VV" id="7P_FdVPW9uX" role="1B3o_S" />
<node concept="3clFbS" id="7P_FdVPW9uY" role="3clF47">
<node concept="3clFbF" id="NKt6ynqt5n" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynqt5o" role="3clFbG">
<node concept="2ShNRf" id="NKt6ynqt5p" role="2Oq$k0">
<node concept="1pGfFk" id="NKt6ynqt5q" role="2ShVmc">
<ref role="37wK5l" to="fqlx:NKt6yno$sR" resolve="AspectLookup" />
<node concept="2ShNRf" id="NKt6ynqt5r" role="37wK5m">
<node concept="HV5vD" id="NKt6ynqt5s" role="2ShVmc">
<ref role="HV5vE" node="NKt6ynqgZw" resolve="TypecheckingAspect.CoderulesAspectDiscoverable" />
</node>
</node>
<node concept="3uibUv" id="NKt6yoQDx4" role="1pMfVU">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
<node concept="liA8E" id="NKt6ynqt5u" role="2OqNvi">
<ref role="37wK5l" to="fqlx:NKt6ynoYr0" resolve="allForModel" />
<node concept="37vLTw" id="NKt6ynqtVi" role="37wK5m">
<ref role="3cqZAo" node="7P_FdVPWb2y" resolve="model" />
</node>
<node concept="37vLTw" id="NKt6ynqt5w" role="37wK5m">
<ref role="3cqZAo" node="7P_FdVPWb2$" resolve="repository" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="7P_FdVQ35vN" role="jymVt" />
<node concept="2YIFZL" id="7P_FdVPWn7D" role="jymVt">
<property role="TrG5h" value="allForLanguage" />
<node concept="37vLTG" id="7P_FdVPWn7E" role="3clF46">
<property role="TrG5h" value="slang" />
<node concept="3uibUv" id="7P_FdVPWn7F" role="1tU5fm">
<ref role="3uigEE" to="c17a:~SLanguage" resolve="SLanguage" />
</node>
</node>
<node concept="37vLTG" id="7P_FdVPWn7G" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="7P_FdVPWn7H" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3vKaQO" id="7P_FdVPWn7I" role="3clF45">
<node concept="3uibUv" id="NKt6yoQCXl" role="3O5elw">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
<node concept="3Tm1VV" id="7P_FdVPWn7K" role="1B3o_S" />
<node concept="3clFbS" id="7P_FdVPWn7L" role="3clF47">
<node concept="3clFbF" id="NKt6ynquya" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynquyb" role="3clFbG">
<node concept="2ShNRf" id="NKt6ynquyc" role="2Oq$k0">
<node concept="1pGfFk" id="NKt6ynquyd" role="2ShVmc">
<ref role="37wK5l" to="fqlx:NKt6yno$sR" resolve="AspectLookup" />
<node concept="2ShNRf" id="NKt6ynquye" role="37wK5m">
<node concept="HV5vD" id="NKt6ynquyf" role="2ShVmc">
<ref role="HV5vE" node="NKt6ynqgZw" resolve="TypecheckingAspect.CoderulesAspectDiscoverable" />
</node>
</node>
<node concept="3uibUv" id="NKt6yoQDlF" role="1pMfVU">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
<node concept="liA8E" id="NKt6ynquyh" role="2OqNvi">
<ref role="37wK5l" to="fqlx:NKt6ynoU4W" resolve="allForLanguage" />
<node concept="37vLTw" id="NKt6ynquyi" role="37wK5m">
<ref role="3cqZAo" node="7P_FdVPWn7E" resolve="slang" />
</node>
<node concept="37vLTw" id="NKt6ynquyj" role="37wK5m">
<ref role="3cqZAo" node="7P_FdVPWn7G" resolve="repository" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="7P_FdVPWn7C" role="jymVt" />
<node concept="2YIFZL" id="7P_FdVPWjGf" role="jymVt">
<property role="DiZV1" value="false" />
<property role="od$2w" value="false" />
<property role="TrG5h" value="allForLanguage" />
<node concept="37vLTG" id="7P_FdVPWjGg" role="3clF46">
<property role="TrG5h" value="langrt" />
<node concept="3uibUv" id="7P_FdVPWjGh" role="1tU5fm">
<ref role="3uigEE" to="vndm:~LanguageRuntime" resolve="LanguageRuntime" />
</node>
</node>
<node concept="3clFbS" id="7P_FdVPWjGi" role="3clF47">
<node concept="3clFbF" id="NKt6ynqzV4" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynqzV5" role="3clFbG">
<node concept="2ShNRf" id="NKt6ynqzV6" role="2Oq$k0">
<node concept="1pGfFk" id="NKt6ynqzV7" role="2ShVmc">
<ref role="37wK5l" to="fqlx:NKt6yno$sR" resolve="AspectLookup" />
<node concept="2ShNRf" id="NKt6ynqzV8" role="37wK5m">
<node concept="HV5vD" id="NKt6ynqzV9" role="2ShVmc">
<ref role="HV5vE" node="NKt6ynqgZw" resolve="TypecheckingAspect.CoderulesAspectDiscoverable" />
</node>
</node>
<node concept="3uibUv" id="NKt6yoQDam" role="1pMfVU">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
<node concept="liA8E" id="NKt6ynqzVb" role="2OqNvi">
<ref role="37wK5l" to="fqlx:NKt6ynoAJU" resolve="allForLanguage" />
<node concept="37vLTw" id="NKt6ynq$s_" role="37wK5m">
<ref role="3cqZAo" node="7P_FdVPWjGg" resolve="langrt" />
</node>
</node>
</node>
</node>
</node>
<node concept="3vKaQO" id="7P_FdVPWlen" role="3clF45">
<node concept="3uibUv" id="NKt6yoQD3Q" role="3O5elw">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
<node concept="3Tm1VV" id="7P_FdVPWjGp" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="7P_FdVPWjGe" role="jymVt" />
<node concept="312cEu" id="NKt6ynqgZw" role="jymVt">
<property role="2bfB8j" value="false" />
<property role="TrG5h" value="CoderulesAspectDiscoverable" />
<node concept="2tJIrI" id="NKt6ynqkgH" role="jymVt" />
<node concept="3clFb_" id="NKt6ynqkof" role="jymVt">
<property role="1EzhhJ" value="false" />
<property role="TrG5h" value="discover" />
<node concept="37vLTG" id="NKt6ynqkog" role="3clF46">
<property role="TrG5h" value="lr" />
<node concept="3uibUv" id="NKt6ynqkoh" role="1tU5fm">
<ref role="3uigEE" to="vndm:~LanguageRuntime" resolve="LanguageRuntime" />
</node>
</node>
<node concept="3uibUv" id="NKt6yp1BXm" role="3clF45">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
<node concept="3Tm1VV" id="NKt6ynqkoj" role="1B3o_S" />
<node concept="3clFbS" id="NKt6ynqkom" role="3clF47">
<node concept="3cpWs8" id="NKt6ynqkuq" role="3cqZAp">
<node concept="3cpWsn" id="NKt6ynqkur" role="3cpWs9">
<property role="TrG5h" value="aspect" />
<node concept="3uibUv" id="NKt6yp1FMk" role="1tU5fm">
<ref role="3uigEE" to="fqlx:NKt6yp1COZ" resolve="DefaultCoderulesAspect" />
</node>
<node concept="2OqwBi" id="NKt6ynqkut" role="33vP2m">
<node concept="37vLTw" id="NKt6ynqkuu" role="2Oq$k0">
<ref role="3cqZAo" node="NKt6ynqkog" resolve="lr" />
</node>
<node concept="liA8E" id="NKt6ynqkuv" role="2OqNvi">
<ref role="37wK5l" to="vndm:~LanguageRuntime.getAspect(java.lang.Class):jetbrains.mps.smodel.runtime.ILanguageAspect" resolve="getAspect" />
<node concept="3VsKOn" id="NKt6ynqkuw" role="37wK5m">
<ref role="3VsUkX" to="fqlx:NKt6yp1COZ" resolve="DefaultCoderulesAspect" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbJ" id="NKt6ynqkux" role="3cqZAp">
<node concept="3clFbS" id="NKt6ynqkuy" role="3clFbx">
<node concept="3clFbJ" id="NKt6ynqkA2" role="3cqZAp">
<node concept="3clFbS" id="NKt6ynqkA3" role="3clFbx">
<node concept="3clFbF" id="NKt6ynqkA4" role="3cqZAp">
<node concept="2OqwBi" id="NKt6ynqkA5" role="3clFbG">
<node concept="37vLTw" id="NKt6ynqkAe" role="2Oq$k0">
<ref role="3cqZAo" node="NKt6ynqkur" resolve="aspect" />
</node>
<node concept="liA8E" id="NKt6ynqkA7" role="2OqNvi">
<ref role="37wK5l" to="fqlx:7P_FdVQ2EWw" resolve="setLanguageRuntime" />
<node concept="37vLTw" id="NKt6ynqkAf" role="37wK5m">
<ref role="3cqZAo" node="NKt6ynqkog" resolve="lr" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbC" id="NKt6ynqkA9" role="3clFbw">
<node concept="10Nm6u" id="NKt6ynqkAa" role="3uHU7w" />
<node concept="2OqwBi" id="NKt6ynqkAb" role="3uHU7B">
<node concept="37vLTw" id="NKt6ynqkAg" role="2Oq$k0">
<ref role="3cqZAo" node="NKt6ynqkur" resolve="aspect" />
</node>
<node concept="liA8E" id="NKt6ynqkAd" role="2OqNvi">
<ref role="37wK5l" to="fqlx:7P_FdVQ2VEI" resolve="languageRuntime" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="NKt6ynqkuB" role="3clFbw">
<node concept="10Nm6u" id="NKt6ynqkuC" role="3uHU7w" />
<node concept="37vLTw" id="NKt6ynqkuD" role="3uHU7B">
<ref role="3cqZAo" node="NKt6ynqkur" resolve="aspect" />
</node>
</node>
</node>
<node concept="3clFbF" id="NKt6ynqkuE" role="3cqZAp">
<node concept="37vLTw" id="NKt6ynqkuF" role="3clFbG">
<ref role="3cqZAo" node="NKt6ynqkur" resolve="aspect" />
</node>
</node>
</node>
<node concept="2AHcQZ" id="NKt6ynqkon" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="3Tm1VV" id="NKt6ynqgZx" role="1B3o_S" />
<node concept="3uibUv" id="NKt6ynqkjf" role="EKbjA">
<ref role="3uigEE" to="fqlx:NKt6ynom3d" resolve="AspectDiscoverable" />
<node concept="3uibUv" id="NKt6yoQCkO" role="11_B2D">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
<node concept="2tJIrI" id="NKt6ynqdSf" role="jymVt" />
<node concept="3clFb_" id="2hteS6ClmbE" role="jymVt">
<property role="TrG5h" value="createMacroManifest" />
<property role="1EzhhJ" value="true" />
<node concept="3uibUv" id="2hteS6ClmeA" role="3clF45">
<ref role="3uigEE" to="psr6:2N2MQGCMVqD" resolve="AbstractMacroManifest" />
</node>
<node concept="3Tm1VV" id="2hteS6ClmbH" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6ClmbI" role="3clF47" />
<node concept="2AHcQZ" id="NKt6yomP83" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="2hteS6Clmfw" role="jymVt" />
<node concept="3clFb_" id="2hteS6ClmfS" role="jymVt">
<property role="TrG5h" value="createRuleManifest" />
<property role="1EzhhJ" value="true" />
<node concept="3uibUv" id="2hteS6Clmgy" role="3clF45">
<ref role="3uigEE" to="i348:4OKkcnfu_xe" resolve="AbstractRuleTemplateManifest" />
</node>
<node concept="3Tm1VV" id="2hteS6ClmfV" role="1B3o_S" />
<node concept="3clFbS" id="2hteS6ClmfW" role="3clF47" />
<node concept="2AHcQZ" id="NKt6yomPxd" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="2hteS6Cleqc" role="jymVt" />
<node concept="3Tm1VV" id="7km57Pkjxf5" role="1B3o_S" />
<node concept="3uibUv" id="NKt6yomOJv" role="EKbjA">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
<node concept="3uibUv" id="7km57PkjxgV" role="EKbjA">
<ref role="3uigEE" to="ze1i:~ILanguageAspect" resolve="ILanguageAspect" />
</node>
<node concept="3UR2Jj" id="7P_FdVPWD2k" role="lGtFl">
<node concept="TZ5HA" id="7P_FdVPWD2l" role="TZ5H$">
<node concept="1dT_AC" id="7P_FdVPWD2m" role="1dT_Ay">
<property role="1dT_AB" value="All allFor* methods return the list sorted in topological order, so that the extending" />
</node>
</node>
<node concept="TZ5HA" id="7P_FdVPWEBW" role="TZ5H$">
<node concept="1dT_AC" id="7P_FdVPWEBX" role="1dT_Ay">
<property role="1dT_AB" value="aspects come first. " />
</node>
</node>
</node>
<node concept="3uibUv" id="NKt6yp1DsV" role="1zkMxy">
<ref role="3uigEE" to="fqlx:NKt6yp1COZ" resolve="DefaultCoderulesAspect" />
</node>
</node>
</model>

View File

@ -1214,6 +1214,12 @@
<ref role="3bR37D" to="ffeo:7Kfy9QB6KXW" resolve="jetbrains.mps.lang.core" />
</node>
</node>
<node concept="1SiIV0" id="NKt6yomX1A" role="3bR37C">
<node concept="3bR9La" id="NKt6yomX1B" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
</node>
</node>
<node concept="1E1JtA" id="7BVjoXzUx9d" role="2G$12L">
<property role="BnDLt" value="true" />
@ -1422,6 +1428,117 @@
</node>
</node>
</node>
<node concept="1E1JtD" id="NKt6ynvPIP" role="2G$12L">
<property role="BnDLt" value="true" />
<property role="TrG5h" value="jetbrains.mps.lang.typechecking" />
<property role="3LESm3" value="4b5b4f8d-d30a-4ef8-9bf4-dfd26af9d462" />
<property role="2GAjPV" value="false" />
<node concept="55IIr" id="NKt6ynvPIS" role="3LF7KH">
<node concept="2Ry0Ak" id="NKt6ynvQf3" role="iGT6I">
<property role="2Ry0Am" value="typechecking" />
<node concept="2Ry0Ak" id="NKt6ynvQwc" role="2Ry0An">
<property role="2Ry0Am" value="languages" />
<node concept="2Ry0Ak" id="NKt6ynvQFD" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.lang.typechecking" />
<node concept="2Ry0Ak" id="NKt6ynvQR6" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.lang.typechecking.mpl" />
</node>
</node>
</node>
</node>
</node>
<node concept="1SiIV0" id="NKt6ynvR14" role="3bR37C">
<node concept="1Busua" id="NKt6ynvR15" role="1SiIV1">
<ref role="1Busuk" node="7BVjoXzUx6U" resolve="jetbrains.mps.lang.coderules" />
</node>
</node>
<node concept="1yeLz9" id="NKt6ynvR16" role="1TViLv">
<property role="TrG5h" value="jetbrains.mps.lang.typechecking#01" />
<property role="3LESm3" value="685b46b0-fc2b-411e-954a-af0eeec1a29a" />
<property role="2GAjPV" value="false" />
<node concept="1SiIV0" id="NKt6ynvR17" role="3bR37C">
<node concept="3bR9La" id="NKt6ynvR18" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" node="7BVjoXzUx9d" resolve="jetbrains.mps.lang.coderules.template" />
</node>
</node>
<node concept="1SiIV0" id="NKt6ynvR19" role="3bR37C">
<node concept="3bR9La" id="NKt6ynvR1a" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" node="7BVjoXzUxWX" resolve="jetbrains.mps.lang.coderules#4578927328670739933" />
</node>
</node>
<node concept="1SiIV0" id="NKt6ynvR1b" role="3bR37C">
<node concept="3bR9La" id="NKt6ynvR1c" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" to="ffeo:7Kfy9QB6L8Y" resolve="jetbrains.mps.lang.project" />
</node>
</node>
<node concept="1SiIV0" id="NKt6ynvR1d" role="3bR37C">
<node concept="3bR9La" id="NKt6ynvR1e" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" node="7BVjoXzUx6U" resolve="jetbrains.mps.lang.coderules" />
</node>
</node>
<node concept="1SiIV0" id="NKt6ynQRnI" role="3bR37C">
<node concept="3bR9La" id="NKt6ynQRnJ" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" to="ffeo:7Kfy9QB6L68" resolve="jetbrains.mps.lang.descriptor" />
</node>
</node>
<node concept="1SiIV0" id="NKt6ynQRnL" role="3bR37C">
<node concept="3bR9La" id="NKt6ynQRnK" role="1SiIV1">
<ref role="3bR37D" to="ffeo:7YI57w6K0jH" resolve="jetbrains.mps.lang.descriptor#9020561928507175817" />
</node>
</node>
<node concept="1SiIV0" id="NKt6yomX2i" role="3bR37C">
<node concept="3bR9La" id="NKt6yomX2j" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
</node>
</node>
<node concept="1SiIV0" id="NKt6ynF2pv" role="3bR37C">
<node concept="1Busua" id="NKt6ynF2pw" role="1SiIV1">
<ref role="1Busuk" to="ffeo:7Kfy9QB6L68" resolve="jetbrains.mps.lang.descriptor" />
</node>
</node>
<node concept="1E0d5M" id="NKt6yos4if" role="1E1XAP">
<ref role="1E0d5P" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
</node>
<node concept="1E1JtA" id="NKt6yomVLS" role="2G$12L">
<property role="BnDLt" value="true" />
<property role="TrG5h" value="jetbrains.mps.lang.typechecking.runtime" />
<property role="3LESm3" value="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84" />
<property role="2GAjPV" value="false" />
<node concept="55IIr" id="NKt6yomVLV" role="3LF7KH">
<node concept="2Ry0Ak" id="NKt6yomW6Z" role="iGT6I">
<property role="2Ry0Am" value="typechecking" />
<node concept="2Ry0Ak" id="NKt6yomWj8" role="2Ry0An">
<property role="2Ry0Am" value="solutions" />
<node concept="2Ry0Ak" id="NKt6yomWvh" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.lang.typechecking.runtime" />
<node concept="2Ry0Ak" id="NKt6yomWFq" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.lang.typechecking.runtime.msd" />
</node>
</node>
</node>
</node>
</node>
<node concept="1SiIV0" id="NKt6yomWQ4" role="3bR37C">
<node concept="3bR9La" id="NKt6yomWQ5" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" to="ffeo:1H905DlDUSw" resolve="MPS.OpenAPI" />
</node>
</node>
<node concept="1SiIV0" id="NKt6yomWQ6" role="3bR37C">
<node concept="3bR9La" id="NKt6yomWQ7" role="1SiIV1">
<property role="3bR36h" value="true" />
<ref role="3bR37D" node="7BVjoXzUx9d" resolve="jetbrains.mps.lang.coderules.template" />
</node>
</node>
</node>
<node concept="1E1JtD" id="3u5wJtgiSM" role="2G$12L">
<property role="BnDLt" value="true" />
<property role="TrG5h" value="jetbrains.mps.lang.smodel.types" />
@ -1597,6 +1714,12 @@
<ref role="3bR37D" node="NKt6yn9_8p" resolve="jetbrains.mps.coderules" />
</node>
</node>
<node concept="1SiIV0" id="NKt6yomX3a" role="3bR37C">
<node concept="3bR9La" id="NKt6yomX3b" role="1SiIV1">
<property role="3bR36h" value="false" />
<ref role="3bR37D" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
</node>
</node>
<node concept="1E1JtD" id="46o4wsH5PJF" role="2G$12L">
<property role="BnDLt" value="true" />
@ -2038,12 +2161,12 @@
<node concept="55IIr" id="1BDNG5xBZgh" role="auvoZ" />
<node concept="1l3spV" id="1BDNG5xBZgi" role="1l3spN">
<node concept="398223" id="7Ant4WkHLAp" role="39821P">
<node concept="L2wRC" id="7Ant4WkHLmo" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxkQ" resolve="jetbrains.mps.logic" />
</node>
<node concept="L2wRC" id="JOGAOsFE1x" role="39821P">
<ref role="L2wRA" node="JOGAOsFCCM" resolve="jetbrains.mps.dataform" />
</node>
<node concept="L2wRC" id="7Ant4WkHLmo" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxkQ" resolve="jetbrains.mps.logic" />
</node>
<node concept="L2wRC" id="7Ant4WkHLmw" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxoR" resolve="jetbrains.mps.logic.reactor" />
</node>
@ -2062,6 +2185,15 @@
<node concept="L2wRC" id="7Ant4WkHLms" role="39821P">
<ref role="L2wRA" node="7BVjoXzUx9d" resolve="jetbrains.mps.lang.coderules.template" />
</node>
<node concept="L2wRC" id="NKt6yowV1X" role="39821P">
<ref role="L2wRA" node="NKt6yn9_8p" resolve="jetbrains.mps.coderules" />
</node>
<node concept="L2wRC" id="NKt6yowVlP" role="39821P">
<ref role="L2wRA" node="NKt6ynvPIP" resolve="jetbrains.mps.lang.typechecking" />
</node>
<node concept="L2wRC" id="NKt6yowVyS" role="39821P">
<ref role="L2wRA" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
<node concept="L2wRC" id="7Ant4WkHLmq" role="39821P">
<ref role="L2wRA" node="65DJywFj0Fi" resolve="jetbrains.mps.typechecking" />
</node>
@ -2137,16 +2269,16 @@
</node>
</node>
</node>
<node concept="2HvfSZ" id="3NqN4u$_rqd" role="39821P">
<node concept="398BVA" id="3NqN4u$_rqe" role="2HvfZ0">
<node concept="2HvfSZ" id="NKt6yoyOIy" role="39821P">
<node concept="398BVA" id="NKt6yoyOIz" role="2HvfZ0">
<ref role="398BVh" node="46o4wsH3mv_" resolve="mps.macro.logic_home" />
<node concept="2Ry0Ak" id="3NqN4u$_rqf" role="iGT6I">
<property role="2Ry0Am" value="typechecking" />
<node concept="2Ry0Ak" id="3NqN4u$_rqg" role="2Ry0An">
<node concept="2Ry0Ak" id="NKt6yoyOI$" role="iGT6I">
<property role="2Ry0Am" value="coderules" />
<node concept="2Ry0Ak" id="NKt6yoyOI_" role="2Ry0An">
<property role="2Ry0Am" value="solutions" />
<node concept="2Ry0Ak" id="3NqN4u$_rqh" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.typechecking" />
<node concept="2Ry0Ak" id="3NqN4u$_rqi" role="2Ry0An">
<node concept="2Ry0Ak" id="NKt6yoyOIA" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.coderules" />
<node concept="2Ry0Ak" id="NKt6yoyOIB" role="2Ry0An">
<property role="2Ry0Am" value="lib" />
</node>
</node>
@ -2170,12 +2302,12 @@
<property role="3MwjfP" value="languages" />
</node>
</node>
<node concept="L2wRC" id="65DJywFk8Gh" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxkQ" resolve="jetbrains.mps.logic" />
</node>
<node concept="L2wRC" id="JOGAOsFEjP" role="39821P">
<ref role="L2wRA" node="JOGAOsFCCM" resolve="jetbrains.mps.dataform" />
</node>
<node concept="L2wRC" id="65DJywFk8Gh" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxkQ" resolve="jetbrains.mps.logic" />
</node>
<node concept="L2wRC" id="65DJywFk9cZ" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxoR" resolve="jetbrains.mps.logic.reactor" />
<node concept="3yLZsm" id="4EvsDTBGxZc" role="3yL2VB">
@ -2288,6 +2420,15 @@
<node concept="L2wRC" id="65DJywFk8NI" role="39821P">
<ref role="L2wRA" node="7BVjoXzUx$V" resolve="jetbrains.mps.logic.runtime" />
</node>
<node concept="L2wRC" id="65DJywFk8jS" role="39821P">
<ref role="L2wRA" node="7BVjoXzUx6U" resolve="jetbrains.mps.lang.coderules" />
</node>
<node concept="L2wRC" id="65DJywFk8r8" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxee" resolve="jetbrains.mps.lang.coderules.runtime" />
</node>
<node concept="L2wRC" id="65DJywFk8vZ" role="39821P">
<ref role="L2wRA" node="7BVjoXzUx9d" resolve="jetbrains.mps.lang.coderules.template" />
</node>
<node concept="L2wRC" id="NKt6yn9AaW" role="39821P">
<ref role="L2wRA" node="NKt6yn9_8p" resolve="jetbrains.mps.coderules" />
<node concept="3yLZsm" id="NKt6yn9Anr" role="3yL2VB">
@ -2354,14 +2495,11 @@
</node>
</node>
</node>
<node concept="L2wRC" id="65DJywFk8jS" role="39821P">
<ref role="L2wRA" node="7BVjoXzUx6U" resolve="jetbrains.mps.lang.coderules" />
<node concept="L2wRC" id="NKt6yowW84" role="39821P">
<ref role="L2wRA" node="NKt6ynvPIP" resolve="jetbrains.mps.lang.typechecking" />
</node>
<node concept="L2wRC" id="65DJywFk8r8" role="39821P">
<ref role="L2wRA" node="7BVjoXzUxee" resolve="jetbrains.mps.lang.coderules.runtime" />
</node>
<node concept="L2wRC" id="65DJywFk8vZ" role="39821P">
<ref role="L2wRA" node="7BVjoXzUx9d" resolve="jetbrains.mps.lang.coderules.template" />
<node concept="L2wRC" id="NKt6yowWlA" role="39821P">
<ref role="L2wRA" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
<node concept="L2wRC" id="65DJywFj_1R" role="39821P">
<ref role="L2wRA" node="65DJywFj0Fi" resolve="jetbrains.mps.typechecking" />
@ -2372,6 +2510,12 @@
<node concept="L2wRC" id="55Q$YFtwDpa" role="39821P">
<ref role="L2wRA" node="55Q$YFtvwQY" resolve="jetbrains.mps.typechecking.ui" />
</node>
<node concept="L2wRC" id="NKt6yomXjf" role="39821P">
<ref role="L2wRA" node="NKt6ynvPIP" resolve="jetbrains.mps.lang.typechecking" />
</node>
<node concept="L2wRC" id="NKt6yomXwJ" role="39821P">
<ref role="L2wRA" node="NKt6yomVLS" resolve="jetbrains.mps.lang.typechecking.runtime" />
</node>
<node concept="L2wRC" id="3u5wJtgSbK" role="39821P">
<ref role="L2wRA" node="3u5wJtgiSM" resolve="jetbrains.mps.lang.smodel.types" />
</node>
@ -2396,11 +2540,11 @@
<node concept="2HvfSZ" id="3NqN4u$_rD_" role="39821P">
<node concept="55IIr" id="3NqN4u$_rDA" role="2HvfZ0">
<node concept="2Ry0Ak" id="3NqN4u$_rDB" role="iGT6I">
<property role="2Ry0Am" value="typechecking" />
<property role="2Ry0Am" value="coderules" />
<node concept="2Ry0Ak" id="3NqN4u$_rDC" role="2Ry0An">
<property role="2Ry0Am" value="solutions" />
<node concept="2Ry0Ak" id="3NqN4u$_rDD" role="2Ry0An">
<property role="2Ry0Am" value="jetbrains.mps.typechecking" />
<property role="2Ry0Am" value="jetbrains.mps.coderules" />
<node concept="2Ry0Ak" id="3NqN4u$_rDE" role="2Ry0An">
<property role="2Ry0Am" value="lib" />
</node>

View File

@ -22,6 +22,7 @@
<dependency reexport="true">6998f568-f0e9-473b-b4a8-9efb6499fc8d(jetbrains.mps.typechecking)</dependency>
<dependency reexport="false">ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)</dependency>
<dependency reexport="false">f97d84b2-8bad-4fdd-8ede-da17b3eacf4c(jetbrains.mps.coderules)</dependency>
<dependency reexport="false">f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="6" />
@ -55,6 +56,7 @@
<module reference="26e8f4ce-2a35-4f44-8065-e5ba154b18e9(jetbrains.mps.lang.coderules.runtime)" version="0" />
<module reference="ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)" version="0" />
<module reference="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" version="0" />
<module reference="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)" version="0" />
<module reference="bbf5c548-7111-4a53-a117-cdefc664cf34(jetbrains.mps.logic.reactor)" version="0" />
<module reference="a5478664-6b44-4c62-a9f7-434f8aa57eee(jetbrains.mps.logic.runtime)" version="0" />
<module reference="a1250a4d-c090-42c3-ad7c-d298a3357dd4(jetbrains.mps.make.runtime)" version="0" />

View File

@ -104,6 +104,7 @@
<import index="5tvg" ref="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c/java:io.reactivex.disposables(jetbrains.mps.coderules/)" />
<import index="iljd" ref="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c/java:io.reactivex.plugins(jetbrains.mps.coderules/)" />
<import index="m4y7" ref="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c/java:io.reactivex.schedulers(jetbrains.mps.coderules/)" />
<import index="u46i" ref="r:c2760840-3210-4ad4-9e64-a2dfd53620e1(jetbrains.mps.lang.typechecking.aspect)" />
</imports>
<registry>
<language id="a247e09e-2435-45ba-b8d2-07e93feba96a" name="jetbrains.mps.baseLanguage.tuples">
@ -26543,9 +26544,9 @@
<node concept="3clFbF" id="3YJ7yg2LDWV" role="3cqZAp">
<node concept="3y3z36" id="3YJ7yg2LDWW" role="3clFbG">
<node concept="10Nm6u" id="3YJ7yg2LDWX" role="3uHU7w" />
<node concept="2YIFZM" id="3YJ7yg2LDWY" role="3uHU7B">
<ref role="37wK5l" to="fqlx:2hteS6Cndm6" resolve="forLanguage" />
<ref role="1Pybhc" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
<node concept="2YIFZM" id="NKt6yomRVP" role="3uHU7B">
<ref role="37wK5l" to="u46i:2hteS6Cndm6" resolve="forLanguage" />
<ref role="1Pybhc" to="u46i:7km57Pkjxf4" resolve="TypecheckingAspect" />
<node concept="37vLTw" id="3YJ7yg2LDWZ" role="37wK5m">
<ref role="3cqZAo" node="3YJ7yg2LDX3" resolve="it" />
</node>
@ -30228,13 +30229,13 @@
<node concept="3cpWsn" id="7WKNeR8ULi1" role="3cpWs9">
<property role="TrG5h" value="aspects" />
<node concept="3vKaQO" id="7WKNeR8ULhW" role="1tU5fm">
<node concept="3uibUv" id="7WKNeR8ULhZ" role="3O5elw">
<ref role="3uigEE" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
<node concept="3uibUv" id="NKt6yoWG9c" role="3O5elw">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
<node concept="2YIFZM" id="7WKNeR8ULi2" role="33vP2m">
<ref role="37wK5l" to="fqlx:7P_FdVPW9uU" resolve="allForModel" />
<ref role="1Pybhc" to="fqlx:7km57Pkjxf4" resolve="TypeAspectDescriptor" />
<node concept="2YIFZM" id="NKt6yomRVQ" role="33vP2m">
<ref role="37wK5l" to="u46i:7P_FdVPW9uU" resolve="allForModel" />
<ref role="1Pybhc" to="u46i:7km57Pkjxf4" resolve="TypecheckingAspect" />
<node concept="2OqwBi" id="7WKNeR8ULi3" role="37wK5m">
<node concept="37vLTw" id="7WKNeR8ULi4" role="2Oq$k0">
<ref role="3cqZAo" node="6hqFpWnfbDy" resolve="containingRoot" />