Several fixes that guarantee stable order of rules in the program.

Ensure the order of rules in the resulting plan follows the priorities
set forward by extends relationship b/w languages. So that even if
rule template tables are unrelated, they are still ordered according to
language extension graph.
Ensure the order of rule lists in the resulting plan is stable b/w invocations of
RulesPlanHandler.allPlans().
Ensure the order of aspects in AspectClique is stable b/w invocations
of buildClique().

Associate RuleTemplatesTable with Manifest, and Manifest with CoderulesAspect.
Tentatively rename RulesList (the runtime object) to RulesPlan,
RulesListTable to RulesPlanHandler.
This commit is contained in:
Fedor Isakov 2020-10-23 11:50:43 +02:00
parent 8bd1ba6590
commit 930100a47b
11 changed files with 665 additions and 183 deletions

View File

@ -9310,9 +9310,21 @@
<property role="TrG5h" value="_RuleTable" />
<node concept="2tJIrI" id="4MqhgXUa3oI" role="jymVt" />
<node concept="3clFbW" id="4MqhgXUhXXR" role="jymVt">
<node concept="37vLTG" id="1LBj9w_9Ss$" role="3clF46">
<property role="TrG5h" value="manifest" />
<node concept="3uibUv" id="1LBj9w_9SE1" role="1tU5fm">
<ref role="3uigEE" to="fqlx:5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
</node>
<node concept="3cqZAl" id="4MqhgXUhXXT" role="3clF45" />
<node concept="3Tmbuc" id="7P_FdVQ43kJ" role="1B3o_S" />
<node concept="3clFbS" id="4MqhgXUhXXV" role="3clF47">
<node concept="XkiVB" id="1LBj9w_9S$X" role="3cqZAp">
<ref role="37wK5l" to="i348:1LBj9w_9RIX" resolve="AbstractRuleTable" />
<node concept="37vLTw" id="1LBj9w_9SGG" role="37wK5m">
<ref role="3cqZAo" node="1LBj9w_9Ss$" resolve="manifest" />
</node>
</node>
<node concept="3clFbF" id="7P_FdVQ43Zr" role="3cqZAp">
<node concept="1rXfSq" id="7P_FdVQ43Zq" role="3clFbG">
<ref role="37wK5l" node="4MqhgXUcrKp" resolve="init" />
@ -12783,27 +12795,47 @@
<property role="3GE5qa" value="aspect" />
<node concept="2tJIrI" id="5EDW3XF61Rp" role="jymVt" />
<node concept="3clFb_" id="5EDW3XF61YL" role="jymVt">
<property role="TrG5h" value="manifest" />
<property role="TrG5h" value="createManifest" />
<node concept="3uibUv" id="5EDW3XF61YM" role="3clF45">
<ref role="3uigEE" to="fqlx:5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
<node concept="3Tm1VV" id="5EDW3XF61YN" role="1B3o_S" />
<node concept="3clFbS" id="5EDW3XF61YQ" role="3clF47">
<node concept="3clFbF" id="5EDW3XF67ZO" role="3cqZAp">
<node concept="2ShNRf" id="5EDW3XF67ZM" role="3clFbG">
<node concept="HV5vD" id="5EDW3XF68w3" role="2ShVmc">
<ref role="HV5vE" node="5EDW3XF62FH" resolve="Manifest" />
<node concept="1ZhdrF" id="5EDW3XF68_c" role="lGtFl">
<property role="2qtEX8" value="classifier" />
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/2820489544401957797/2820489544401957798" />
<node concept="3$xsQk" id="5EDW3XF68_d" role="3$ytzL">
<node concept="3clFbS" id="5EDW3XF68_e" role="2VODD2">
<node concept="3clFbF" id="5EDW3XF68Ds" role="3cqZAp">
<node concept="2OqwBi" id="5EDW3XF68P4" role="3clFbG">
<node concept="1iwH7S" id="5EDW3XF68Dr" role="2Oq$k0" />
<node concept="1iwH7d" id="5EDW3XF68Vd" role="2OqNvi">
<ref role="1iwH7c" node="5EDW3XF64MJ" resolve="manifest" />
<node concept="3clFbF" id="1LBj9w_9WJm" role="3cqZAp">
<node concept="2ShNRf" id="1LBj9w_9WJi" role="3clFbG">
<node concept="1pGfFk" id="1LBj9w_9Xf_" role="2ShVmc">
<ref role="37wK5l" node="5EDW3XF6_7s" resolve="Manifest" />
<node concept="Xjq3P" id="1LBj9w_awqg" role="37wK5m" />
<node concept="1ZhdrF" id="1LBj9w_9Xgj" role="lGtFl">
<property role="2qtEX8" value="baseMethodDeclaration" />
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/1204053956946/1068499141037" />
<node concept="3$xsQk" id="1LBj9w_9Xgk" role="3$ytzL">
<node concept="3clFbS" id="1LBj9w_9Xgl" role="2VODD2">
<node concept="3cpWs8" id="1LBj9w_9XSi" role="3cqZAp">
<node concept="3cpWsn" id="1LBj9w_9XSj" role="3cpWs9">
<property role="TrG5h" value="cc" />
<node concept="3Tqbb2" id="1LBj9w_9X$O" role="1tU5fm">
<ref role="ehGHo" to="tpee:fz12cDA" resolve="ClassConcept" />
</node>
<node concept="2OqwBi" id="1LBj9w_9XSk" role="33vP2m">
<node concept="1iwH7S" id="1LBj9w_9XSl" role="2Oq$k0" />
<node concept="1iwH7d" id="1LBj9w_9XSm" role="2OqNvi">
<ref role="1iwH7c" node="5EDW3XF64MJ" resolve="manifest" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="1LBj9w_af_O" role="3cqZAp">
<node concept="2OqwBi" id="1LBj9w_agSU" role="3clFbG">
<node concept="2OqwBi" id="1LBj9w_ag40" role="2Oq$k0">
<node concept="37vLTw" id="1LBj9w_af_M" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9w_9XSj" resolve="cc" />
</node>
<node concept="2qgKlT" id="1LBj9w_agBD" role="2OqNvi">
<ref role="37wK5l" to="tpek:4_LVZ3pCvsd" resolve="constructors" />
</node>
</node>
<node concept="1uHKPH" id="1LBj9w_ahfV" role="2OqNvi" />
</node>
</node>
</node>
@ -16859,9 +16891,21 @@
<property role="TrG5h" value="Manifest" />
<node concept="2tJIrI" id="5EDW3XF62Ng" role="jymVt" />
<node concept="3clFbW" id="5EDW3XF6_7s" role="jymVt">
<node concept="37vLTG" id="1LBj9w_9V6Z" role="3clF46">
<property role="TrG5h" value="coderulesAspect" />
<node concept="3uibUv" id="1LBj9w_9VdC" role="1tU5fm">
<ref role="3uigEE" to="fqlx:NKt6yp1COZ" resolve="AbstractCoderulesAspect" />
</node>
</node>
<node concept="3cqZAl" id="5EDW3XF6_7u" role="3clF45" />
<node concept="3Tm1VV" id="5EDW3XF6_7v" role="1B3o_S" />
<node concept="3clFbS" id="5EDW3XF6_7w" role="3clF47">
<node concept="XkiVB" id="1LBj9w_9Won" role="3cqZAp">
<ref role="37wK5l" to="fqlx:1LBj9w_9VgG" resolve="AbstractCoderulesManifest" />
<node concept="37vLTw" id="1LBj9w_9Wty" role="37wK5m">
<ref role="3cqZAo" node="1LBj9w_9V6Z" resolve="coderulesAspect" />
</node>
</node>
<node concept="3clFbF" id="5EDW3XF6_LR" role="3cqZAp">
<node concept="1rXfSq" id="5EDW3XF6_LQ" role="3clFbG">
<ref role="37wK5l" node="5EDW3XF6enC" resolve="init" />
@ -17093,6 +17137,7 @@
</node>
</node>
</node>
<node concept="Xjq3P" id="1LBj9w_pUnV" role="37wK5m" />
</node>
</node>
</node>

View File

@ -3790,7 +3790,7 @@
<ref role="2Gs0qQ" node="NKt6yoTa9Y" resolve="aspect" />
</node>
<node concept="liA8E" id="5EDW3XFurcV" role="2OqNvi">
<ref role="37wK5l" to="fqlx:5EDW3XF61A_" resolve="manifest" />
<ref role="37wK5l" to="fqlx:5EDW3XF61A_" resolve="createManifest" />
</node>
</node>
</node>
@ -4236,9 +4236,9 @@
<ref role="3uigEE" to="psoy:7Oc59RSEjdb" resolve="Result" />
</node>
<node concept="37vLTG" id="7i3KM7gki_o" role="3clF46">
<property role="TrG5h" value="rulesListTable" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="7i3KM7gkkBv" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTG" id="7kTeLbPojCA" role="3clF46">
@ -4262,7 +4262,7 @@
<node concept="1rXfSq" id="7kTeLbPojCG" role="3clFbG">
<ref role="37wK5l" node="7kTeLbPnDc0" resolve="doProduce" />
<node concept="37vLTw" id="7i3KM7gkmob" role="37wK5m">
<ref role="3cqZAo" node="7i3KM7gki_o" resolve="rulesListTable" />
<ref role="3cqZAo" node="7i3KM7gki_o" resolve="planHandler" />
</node>
<node concept="1bVj0M" id="7kTeLbPojCH" role="37wK5m">
<node concept="37vLTG" id="7kTeLbPojCI" role="1bW2Oz">
@ -4433,9 +4433,9 @@
<node concept="3clFb_" id="7kTeLbPnDc0" role="jymVt">
<property role="TrG5h" value="doProduce" />
<node concept="37vLTG" id="7i3KM7gknF0" role="3clF46">
<property role="TrG5h" value="rulesListTable" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="7i3KM7gko3T" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTG" id="7kTeLbPnFaf" role="3clF46">
@ -4554,7 +4554,7 @@
<node concept="1pGfFk" id="6OXbTDxQIab" role="2ShVmc">
<ref role="37wK5l" to="ksgm:7DvO2M9uuLO" resolve="ProgramFactory" />
<node concept="37vLTw" id="7i3KM7gkt4C" role="37wK5m">
<ref role="3cqZAo" node="7i3KM7gknF0" resolve="rulesListTable" />
<ref role="3cqZAo" node="7i3KM7gknF0" resolve="planHandler" />
</node>
<node concept="37vLTw" id="61G6TdBoPaE" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBoK17" resolve="applicationSession" />

View File

@ -35,6 +35,7 @@
<import index="psoy" ref="r:78313117-90ee-47a5-a91e-b5213df7f611(jetbrains.mps.coderules.runtime.result)" />
<import index="lehm" ref="r:464fcc95-fddb-47d1-b620-592cbf6b8bf2(jetbrains.mps.coderules.runtime.memoizer)" />
<import index="w1kc" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel(MPS.Core/)" />
<import index="fqlx" ref="r:2cc226a9-8a78-4010-b962-823343fd28ff(jetbrains.mps.lang.coderules.aspect)" />
</imports>
<registry>
<language id="a247e09e-2435-45ba-b8d2-07e93feba96a" name="jetbrains.mps.baseLanguage.tuples">
@ -453,15 +454,20 @@
<child id="1201654602639" name="key" index="38cxEo" />
</concept>
<concept id="1203518072036" name="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" flags="ig" index="Rh6nW" />
<concept id="1205679737078" name="jetbrains.mps.baseLanguage.collections.structure.SortOperation" flags="nn" index="2S7cBI">
<child id="1205679832066" name="ascending" index="2S7zOq" />
</concept>
<concept id="1237909114519" name="jetbrains.mps.baseLanguage.collections.structure.GetValuesOperation" flags="nn" index="T8wYR" />
<concept id="1160600644654" name="jetbrains.mps.baseLanguage.collections.structure.ListCreatorWithInit" flags="nn" index="Tc6Ow" />
<concept id="1160612413312" name="jetbrains.mps.baseLanguage.collections.structure.AddElementOperation" flags="nn" index="TSZUe" />
<concept id="1171391069720" name="jetbrains.mps.baseLanguage.collections.structure.GetIndexOfOperation" flags="nn" index="2WmjW8" />
<concept id="1160666733551" name="jetbrains.mps.baseLanguage.collections.structure.AddAllElementsOperation" flags="nn" index="X8dFx" />
<concept id="1240151247486" name="jetbrains.mps.baseLanguage.collections.structure.ContainerIteratorType" flags="in" index="2YL$Hu" />
<concept id="1240151544672" name="jetbrains.mps.baseLanguage.collections.structure.RemoveOperation" flags="nn" index="2YMH90" />
<concept id="1240216724530" name="jetbrains.mps.baseLanguage.collections.structure.LinkedHashMapCreator" flags="nn" index="32Fmki" />
<concept id="1201792049884" name="jetbrains.mps.baseLanguage.collections.structure.TranslateOperation" flags="nn" index="3goQfb" />
<concept id="1201872418428" name="jetbrains.mps.baseLanguage.collections.structure.GetKeysOperation" flags="nn" index="3lbrtF" />
<concept id="1178286324487" name="jetbrains.mps.baseLanguage.collections.structure.SortDirection" flags="nn" index="1nlBCl" />
<concept id="1197683403723" name="jetbrains.mps.baseLanguage.collections.structure.MapType" flags="in" index="3rvAFt">
<child id="1197683466920" name="keyType" index="3rvQeY" />
<child id="1197683475734" name="valueType" index="3rvSg0" />
@ -487,6 +493,7 @@
</concept>
<concept id="5686963296372475025" name="jetbrains.mps.baseLanguage.collections.structure.QueueType" flags="in" index="3O6Q9H" />
<concept id="1178894719932" name="jetbrains.mps.baseLanguage.collections.structure.DistinctOperation" flags="nn" index="1VAtEI" />
<concept id="599357942184015200" name="jetbrains.mps.baseLanguage.collections.structure.AlsoSortOperation" flags="nn" index="1XvEQZ" />
</language>
</registry>
<node concept="312cEu" id="7eGEHDlcEJ0">
@ -848,7 +855,7 @@
<ref role="37wK5l" to="33ny:~List.add(java.lang.Object)" resolve="add" />
<node concept="2ShNRf" id="2jxMt58$_az" role="37wK5m">
<node concept="1pGfFk" id="2jxMt58$_Lf" role="2ShVmc">
<ref role="37wK5l" node="4MqhgXUM$CT" resolve="RulesListTable.RulesListImpl" />
<ref role="37wK5l" node="4MqhgXUM$CT" resolve="RulesPlanHandler.RulesPlanImpl" />
<node concept="2OqwBi" id="2jxMt58$A3k" role="37wK5m">
<node concept="37vLTw" id="2jxMt58$_Vz" role="2Oq$k0">
<ref role="3cqZAo" node="2jxMt58zFQE" resolve="rulesList" />
@ -965,7 +972,51 @@
<node concept="3Tm1VV" id="7nPD14O5B_4" role="1B3o_S" />
</node>
<node concept="312cEu" id="7DvO2M9Uago">
<property role="TrG5h" value="RulesListTable" />
<property role="TrG5h" value="RulesPlanHandler" />
<node concept="2tJIrI" id="1LBj9w_9Df1" role="jymVt" />
<node concept="3clFbW" id="1LBj9w_Ebf5" role="jymVt">
<node concept="37vLTG" id="1LBj9w_EkRF" role="3clF46">
<property role="TrG5h" value="aspectClique" />
<node concept="3uibUv" id="1LBj9w_Elaj" role="1tU5fm">
<ref role="3uigEE" to="fqlx:3KN3A4uUhmW" resolve="AspectClique" />
<node concept="3qUE_q" id="1LBj9w_ElbX" role="11_B2D">
<node concept="3uibUv" id="1LBj9w_ElcK" role="3qUE_r">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="3cqZAl" id="1LBj9w_Ebf7" role="3clF45" />
<node concept="3Tm1VV" id="1LBj9w_Ebf8" role="1B3o_S" />
<node concept="3clFbS" id="1LBj9w_Ebf9" role="3clF47">
<node concept="3clFbF" id="1LBj9w_Elev" role="3cqZAp">
<node concept="37vLTI" id="1LBj9w_Elex" role="3clFbG">
<node concept="2OqwBi" id="1LBj9w_EoSG" role="37vLTJ">
<node concept="Xjq3P" id="1LBj9w_EpcK" role="2Oq$k0" />
<node concept="2OwXpG" id="1LBj9w_EoSJ" role="2OqNvi">
<ref role="2Oxat5" node="1LBj9w_Elep" resolve="aspectClique" />
</node>
</node>
<node concept="37vLTw" id="1LBj9w_Ele_" role="37vLTx">
<ref role="3cqZAo" node="1LBj9w_EkRF" resolve="aspectClique" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="1LBj9w_EetB" role="jymVt" />
<node concept="3clFbW" id="1LBj9w_EhDG" role="jymVt">
<node concept="3cqZAl" id="1LBj9w_EhDI" role="3clF45" />
<node concept="3Tm1VV" id="1LBj9w_EhDJ" role="1B3o_S" />
<node concept="3clFbS" id="1LBj9w_EhDK" role="3clF47" />
<node concept="P$JXv" id="1LBj9w_EpeU" role="lGtFl">
<node concept="TZ5HA" id="1LBj9w_EpeV" role="TZ5H$">
<node concept="1dT_AC" id="1LBj9w_EpeW" role="1dT_Ay">
<property role="1dT_AB" value="Only for tests." />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="7DvO2M9Uagp" role="jymVt" />
<node concept="3clFb_" id="7DvO2M9Uagq" role="jymVt">
<property role="TrG5h" value="update" />
@ -1083,7 +1134,7 @@
<node concept="3clFbF" id="7DvO2M9UagD" role="3cqZAp">
<node concept="2OqwBi" id="7DvO2M9UagE" role="3clFbG">
<node concept="1rXfSq" id="7DvO2M9UagF" role="2Oq$k0">
<ref role="37wK5l" node="7DvO2M9Uahp" resolve="rulesListBuilder" />
<ref role="37wK5l" node="7DvO2M9Uahp" resolve="rulesPlanBuilder" />
<node concept="2OqwBi" id="7DvO2M9UagG" role="37wK5m">
<node concept="37vLTw" id="7DvO2M9UagH" role="2Oq$k0">
<ref role="3cqZAo" node="7DvO2M9Uagr" resolve="ruleTemplate" />
@ -1266,7 +1317,7 @@
<node concept="3clFbF" id="cmlg9Ov5u4" role="3cqZAp">
<node concept="2OqwBi" id="cmlg9Ow9om" role="3clFbG">
<node concept="1rXfSq" id="cmlg9Ov5u6" role="2Oq$k0">
<ref role="37wK5l" node="7DvO2M9Uahp" resolve="rulesListBuilder" />
<ref role="37wK5l" node="7DvO2M9Uahp" resolve="rulesPlanBuilder" />
<node concept="2OqwBi" id="cmlg9Ov5u7" role="37wK5m">
<node concept="37vLTw" id="cmlg9Ov5u8" role="2Oq$k0">
<ref role="3cqZAo" node="cmlg9Ov1RK" resolve="ruleTemplate" />
@ -1332,7 +1383,7 @@
</node>
<node concept="2tJIrI" id="6OXbTDy0F6L" role="jymVt" />
<node concept="3clFb_" id="7DvO2M9UagU" role="jymVt">
<property role="TrG5h" value="allLists" />
<property role="TrG5h" value="allPlans" />
<node concept="A3Dl8" id="7DvO2M9UagV" role="3clF45">
<node concept="3uibUv" id="7DvO2M9UagW" role="A3Ik2">
<ref role="3uigEE" to="av0y:~RulesList" resolve="RulesList" />
@ -1342,7 +1393,7 @@
<node concept="3clFbS" id="7DvO2M9UagY" role="3clF47">
<node concept="3cpWs8" id="7DvO2M9UagZ" role="3cqZAp">
<node concept="3cpWsn" id="7DvO2M9Uah0" role="3cpWs9">
<property role="TrG5h" value="allHandlers" />
<property role="TrG5h" value="allPlans" />
<node concept="_YKpA" id="7DvO2M9Uah1" role="1tU5fm">
<node concept="3uibUv" id="7DvO2M9Uah2" role="_ZDj9">
<ref role="3uigEE" to="av0y:~RulesList" resolve="RulesList" />
@ -1362,19 +1413,19 @@
<node concept="3clFbF" id="7DvO2M9Uah8" role="3cqZAp">
<node concept="2OqwBi" id="7DvO2M9Uah9" role="3clFbG">
<node concept="37vLTw" id="7DvO2M9Uaha" role="2Oq$k0">
<ref role="3cqZAo" node="7DvO2M9Uah0" resolve="allHandlers" />
<ref role="3cqZAo" node="7DvO2M9Uah0" resolve="allPlans" />
</node>
<node concept="TSZUe" id="7DvO2M9Uahb" role="2OqNvi">
<node concept="2OqwBi" id="7DvO2M9Uahc" role="25WWJ7">
<node concept="liA8E" id="7DvO2M9Uahe" role="2OqNvi">
<ref role="37wK5l" node="4MqhgXUNDLG" resolve="toRulesList" />
<ref role="37wK5l" node="4MqhgXUNDLG" resolve="toRulesPlan" />
</node>
<node concept="3EllGN" id="2$$Q_FeVdfK" role="2Oq$k0">
<node concept="2GrUjf" id="2$$Q_FeVdhk" role="3ElVtu">
<ref role="2Gs0qQ" node="2$$Q_FeVcey" resolve="tpl" />
</node>
<node concept="37vLTw" id="2$$Q_FeVcOg" role="3ElQJh">
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="ruleTableBuilders" />
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="rulePlanBuilders" />
</node>
</node>
</node>
@ -1386,7 +1437,7 @@
<ref role="37wK5l" node="2$$Q_FeUpFv" resolve="topoSort" />
<node concept="2OqwBi" id="2$$Q_FeVb$4" role="37wK5m">
<node concept="37vLTw" id="2$$Q_FeVb$5" role="2Oq$k0">
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="ruleTableBuilders" />
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="rulePlanBuilders" />
</node>
<node concept="3lbrtF" id="2$$Q_FeVb$6" role="2OqNvi" />
</node>
@ -1417,15 +1468,15 @@
<node concept="3clFbF" id="6OXbTDzHkqn" role="3cqZAp">
<node concept="2OqwBi" id="6OXbTDzHkqo" role="3clFbG">
<node concept="37vLTw" id="6OXbTDzHkqp" role="2Oq$k0">
<ref role="3cqZAo" node="7DvO2M9Uah0" resolve="allHandlers" />
<ref role="3cqZAo" node="7DvO2M9Uah0" resolve="allPlans" />
</node>
<node concept="TSZUe" id="6OXbTDzHkqq" role="2OqNvi">
<node concept="2OqwBi" id="6OXbTDzHkqr" role="25WWJ7">
<node concept="37vLTw" id="6OXbTDzHkqs" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDzHkqu" resolve="rulesListBuilder" />
<ref role="3cqZAo" node="6OXbTDzHkqu" resolve="builder" />
</node>
<node concept="liA8E" id="cmlg9Nhb9$" role="2OqNvi">
<ref role="37wK5l" node="4MqhgXUNDLG" resolve="toRulesList" />
<ref role="37wK5l" node="4MqhgXUNDLG" resolve="toRulesPlan" />
</node>
</node>
</node>
@ -1433,14 +1484,14 @@
</node>
</node>
<node concept="3cpWsn" id="6OXbTDzHkqu" role="1Duv9x">
<property role="TrG5h" value="rulesListBuilder" />
<property role="TrG5h" value="builder" />
<node concept="3uibUv" id="6OXbTDzHkqv" role="1tU5fm">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
</node>
<node concept="2OqwBi" id="6OXbTDzHkqw" role="1DdaDG">
<node concept="37vLTw" id="6OXbTDzHkPF" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDy15hb" resolve="queryHandlerBuilders" />
<ref role="3cqZAo" node="6OXbTDy15hb" resolve="queryPlanBuilders" />
</node>
<node concept="T8wYR" id="6OXbTDzHkqy" role="2OqNvi" />
</node>
@ -1448,7 +1499,7 @@
<node concept="3clFbF" id="7DvO2M9Uahk" role="3cqZAp">
<node concept="2OqwBi" id="7DvO2M9Uahl" role="3clFbG">
<node concept="37vLTw" id="7DvO2M9Uahm" role="2Oq$k0">
<ref role="3cqZAo" node="7DvO2M9Uah0" resolve="allHandlers" />
<ref role="3cqZAo" node="7DvO2M9Uah0" resolve="allPlans" />
</node>
<node concept="26Dbio" id="7DvO2M9Uahn" role="2OqNvi" />
</node>
@ -1474,7 +1525,7 @@
</node>
<node concept="2tJIrI" id="7DvO2M9Uaho" role="jymVt" />
<node concept="3clFb_" id="7DvO2M9Uahp" role="jymVt">
<property role="TrG5h" value="rulesListBuilder" />
<property role="TrG5h" value="rulesPlanBuilder" />
<node concept="37vLTG" id="7DvO2M9Uahq" role="3clF46">
<property role="TrG5h" value="ruleTable" />
<node concept="3uibUv" id="7DvO2M9Uahr" role="1tU5fm">
@ -1482,7 +1533,7 @@
</node>
</node>
<node concept="3uibUv" id="7DvO2M9Uahs" role="3clF45">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
<node concept="3Tm6S6" id="7DvO2M9Uaht" role="1B3o_S" />
<node concept="3clFbS" id="7DvO2M9Uahu" role="3clF47">
@ -1490,14 +1541,14 @@
<node concept="3cpWsn" id="7DvO2M9Uahw" role="3cpWs9">
<property role="TrG5h" value="builder" />
<node concept="3uibUv" id="7DvO2M9Uahx" role="1tU5fm">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
<node concept="3EllGN" id="7DvO2M9Uahy" role="33vP2m">
<node concept="37vLTw" id="7DvO2M9Uahz" role="3ElVtu">
<ref role="3cqZAo" node="7DvO2M9Uahq" resolve="ruleTable" />
</node>
<node concept="37vLTw" id="7DvO2M9Uah$" role="3ElQJh">
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="ruleTableBuilders" />
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="rulePlanBuilders" />
</node>
</node>
</node>
@ -1508,7 +1559,7 @@
<node concept="37vLTI" id="7DvO2M9UahC" role="3clFbG">
<node concept="2ShNRf" id="7DvO2M9UahD" role="37vLTx">
<node concept="1pGfFk" id="7DvO2M9UahE" role="2ShVmc">
<ref role="37wK5l" node="4MqhgXUMb4h" resolve="RulesListTable.RuleTableBuilder" />
<ref role="37wK5l" node="4MqhgXUMb4h" resolve="RulesPlanHandler.PlanBuilder" />
<node concept="2OqwBi" id="7DvO2M9UahF" role="37wK5m">
<node concept="37vLTw" id="7DvO2M9UahG" role="2Oq$k0">
<ref role="3cqZAo" node="7DvO2M9Uahq" resolve="ruleTable" />
@ -1545,7 +1596,7 @@
<ref role="3cqZAo" node="7DvO2M9Uahq" resolve="ruleTable" />
</node>
<node concept="37vLTw" id="7DvO2M9Uai9" role="3ElQJh">
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="ruleTableBuilders" />
<ref role="3cqZAo" node="7DvO2M9Uaig" resolve="rulePlanBuilders" />
</node>
</node>
</node>
@ -1576,7 +1627,7 @@
</node>
</node>
<node concept="3uibUv" id="6OXbTDzvEX_" role="3clF45">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
<node concept="3Tm6S6" id="6OXbTDy166v" role="1B3o_S" />
<node concept="3clFbS" id="6OXbTDy166w" role="3clF47">
@ -1584,14 +1635,14 @@
<node concept="3cpWsn" id="6OXbTDy166y" role="3cpWs9">
<property role="TrG5h" value="handlerBuilder" />
<node concept="3uibUv" id="6OXbTDzvoxW" role="1tU5fm">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
<node concept="3EllGN" id="6OXbTDy166$" role="33vP2m">
<node concept="37vLTw" id="6OXbTDy166_" role="3ElVtu">
<ref role="3cqZAo" node="6OXbTDy166s" resolve="queryTemplate" />
</node>
<node concept="37vLTw" id="6OXbTDy19TR" role="3ElQJh">
<ref role="3cqZAo" node="6OXbTDy15hb" resolve="queryHandlerBuilders" />
<ref role="3cqZAo" node="6OXbTDy15hb" resolve="queryPlanBuilders" />
</node>
</node>
</node>
@ -1602,7 +1653,7 @@
<node concept="37vLTI" id="6OXbTDzvpOb" role="3clFbG">
<node concept="2ShNRf" id="6OXbTDzvnFP" role="37vLTx">
<node concept="1pGfFk" id="6OXbTDzvnFQ" role="2ShVmc">
<ref role="37wK5l" node="4MqhgXUMb4h" resolve="RulesListTable.RuleTableBuilder" />
<ref role="37wK5l" node="4MqhgXUMb4h" resolve="RulesPlanHandler.PlanBuilder" />
<node concept="2OqwBi" id="6OXbTDzvnFR" role="37wK5m">
<node concept="37vLTw" id="6OXbTD$xJB6" role="2Oq$k0">
<ref role="3cqZAo" node="6OXbTDy166s" resolve="queryTemplate" />
@ -1641,7 +1692,7 @@
<ref role="3cqZAo" node="6OXbTDy166s" resolve="queryTemplate" />
</node>
<node concept="37vLTw" id="6OXbTDy1aJG" role="3ElQJh">
<ref role="3cqZAo" node="6OXbTDy15hb" resolve="queryHandlerBuilders" />
<ref role="3cqZAo" node="6OXbTDy15hb" resolve="queryPlanBuilders" />
</node>
</node>
</node>
@ -1700,22 +1751,21 @@
<ref role="3uigEE" to="wyt6:~String" resolve="String" />
</node>
<node concept="3uibUv" id="2$$Q_FeUrSl" role="3rvSg0">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2ShNRf" id="2$$Q_FeUrVB" role="33vP2m">
<node concept="3rGOSV" id="2$$Q_FeUrU4" role="2ShVmc">
<node concept="3uibUv" id="2$$Q_FeUDuF" role="3rHrn6">
<node concept="3rGOSV" id="1LBj9wAAVsv" role="2ShVmc">
<node concept="3uibUv" id="1LBj9wAAVsx" role="3rHrn6">
<ref role="3uigEE" to="wyt6:~String" resolve="String" />
</node>
<node concept="3uibUv" id="2$$Q_FeUrU6" role="3rHtpV">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<node concept="3uibUv" id="1LBj9wAAVsy" role="3rHtpV">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="2$$Q_FeUrVH" role="3cqZAp" />
<node concept="2Gpval" id="2$$Q_FeV0AR" role="3cqZAp">
<node concept="3clFbS" id="2$$Q_FeV0gm" role="2LFqv$">
<node concept="3clFbJ" id="2$$Q_FeV0EM" role="3cqZAp">
@ -1741,11 +1791,11 @@
<node concept="3cpWsn" id="2$$Q_FeV42W" role="3cpWs9">
<property role="TrG5h" value="vtx" />
<node concept="3uibUv" id="2$$Q_FeV42L" role="1tU5fm">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
<node concept="2ShNRf" id="2$$Q_FeV42X" role="33vP2m">
<node concept="1pGfFk" id="2$$Q_FeV42Y" role="2ShVmc">
<ref role="37wK5l" node="2$$Q_FeUj7r" resolve="RulesListTable.Vtx" />
<ref role="37wK5l" node="2$$Q_FeUj7r" resolve="RulesPlanHandler.Vtx" />
<node concept="2GrUjf" id="2$$Q_FeV42Z" role="37wK5m">
<ref role="2Gs0qQ" node="2$$Q_FeV0Bf" resolve="tpl" />
</node>
@ -1796,7 +1846,7 @@
<property role="TrG5h" value="tpl" />
</node>
</node>
<node concept="3clFbH" id="2$$Q_FeV07y" role="3cqZAp" />
<node concept="3clFbH" id="1LBj9wAij9$" role="3cqZAp" />
<node concept="3SKdUt" id="NKt6ynosm7" role="3cqZAp">
<node concept="1PaTwC" id="589APehYxP$" role="1aUNEU">
<node concept="3oM_SD" id="589APehYxP_" role="1PaTwD">
@ -1873,13 +1923,13 @@
<property role="TrG5h" value="stack" />
<node concept="oyxx6" id="NKt6ynosmb" role="1tU5fm">
<node concept="3uibUv" id="2$$Q_FeUywA" role="3O5elw">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2ShNRf" id="NKt6ynosmd" role="33vP2m">
<node concept="2Jqq0_" id="NKt6ynosme" role="2ShVmc">
<node concept="3uibUv" id="2$$Q_FeUywJ" role="HW$YZ">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
</node>
@ -1890,13 +1940,13 @@
<property role="TrG5h" value="sorted" />
<node concept="2BANLN" id="NKt6ynosmi" role="1tU5fm">
<node concept="3uibUv" id="2$$Q_FeUywS" role="_ZDj9">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2ShNRf" id="NKt6ynosmk" role="33vP2m">
<node concept="2Jqq0_" id="NKt6ynosml" role="2ShVmc">
<node concept="3uibUv" id="2$$Q_FeUyx1" role="HW$YZ">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
</node>
@ -1907,18 +1957,90 @@
<property role="TrG5h" value="visited" />
<node concept="2hMVRd" id="NKt6ynosmp" role="1tU5fm">
<node concept="3uibUv" id="2$$Q_FeUyxa" role="2hN53Y">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2ShNRf" id="NKt6ynosmr" role="33vP2m">
<node concept="2i4dXS" id="NKt6ynosms" role="2ShVmc">
<node concept="3uibUv" id="2$$Q_FeUyxj" role="HW$YZ">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="1LBj9wAigdF" role="3cqZAp">
<node concept="3cpWsn" id="1LBj9wAigdG" role="3cpWs9">
<property role="TrG5h" value="orderedVts" />
<node concept="_YKpA" id="1LBj9wAigca" role="1tU5fm">
<node concept="3uibUv" id="1LBj9wAigcd" role="_ZDj9">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2OqwBi" id="1LBj9wAigdH" role="33vP2m">
<node concept="2OqwBi" id="1LBj9wACj3l" role="2Oq$k0">
<node concept="2OqwBi" id="1LBj9wA$iXz" role="2Oq$k0">
<node concept="2OqwBi" id="1LBj9wAigdJ" role="2Oq$k0">
<node concept="37vLTw" id="1LBj9wAigdK" role="2Oq$k0">
<ref role="3cqZAo" node="2$$Q_FeUrRn" resolve="graph" />
</node>
<node concept="T8wYR" id="1LBj9wAigdL" role="2OqNvi" />
</node>
<node concept="2S7cBI" id="1LBj9wACig5" role="2OqNvi">
<node concept="1bVj0M" id="1LBj9wACig7" role="23t8la">
<node concept="3clFbS" id="1LBj9wACig8" role="1bW5cS">
<node concept="3clFbF" id="1LBj9wACig9" role="3cqZAp">
<node concept="2OqwBi" id="1LBj9wAF4t5" role="3clFbG">
<node concept="37vLTw" id="1LBj9wAF3HR" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9wACigf" resolve="it" />
</node>
<node concept="2OwXpG" id="1LBj9wAF5h7" role="2OqNvi">
<ref role="2Oxat5" node="1LBj9wAhQd1" resolve="priority" />
</node>
</node>
</node>
</node>
<node concept="Rh6nW" id="1LBj9wACigf" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="1LBj9wACigg" role="1tU5fm" />
</node>
</node>
<node concept="1nlBCl" id="1LBj9wAF5PP" role="2S7zOq" />
</node>
</node>
<node concept="1XvEQZ" id="1LBj9wACjYg" role="2OqNvi">
<node concept="1bVj0M" id="1LBj9wACjYi" role="23t8la">
<node concept="3clFbS" id="1LBj9wACjYj" role="1bW5cS">
<node concept="3clFbF" id="1LBj9wACkxP" role="3cqZAp">
<node concept="2OqwBi" id="1LBj9wAF7uu" role="3clFbG">
<node concept="2OqwBi" id="1LBj9wAClar" role="2Oq$k0">
<node concept="37vLTw" id="1LBj9wACkxO" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9wACjYk" resolve="it" />
</node>
<node concept="2OwXpG" id="1LBj9wAF6Jc" role="2OqNvi">
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
</node>
<node concept="liA8E" id="1LBj9wAF894" role="2OqNvi">
<ref role="37wK5l" to="i348:4MqhgXUN1Pe" resolve="name" />
</node>
</node>
</node>
</node>
<node concept="Rh6nW" id="1LBj9wACjYk" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="1LBj9wACjYl" role="1tU5fm" />
</node>
</node>
<node concept="1nlBCl" id="1LBj9wAQ0Sr" role="2S7zOq">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
<node concept="ANE8D" id="1LBj9wAigdW" role="2OqNvi" />
</node>
</node>
</node>
<node concept="1DcWWT" id="NKt6ynosmu" role="3cqZAp">
<node concept="3clFbS" id="NKt6ynosmv" role="2LFqv$">
<node concept="3clFbJ" id="NKt6ynosmw" role="3cqZAp">
@ -1955,7 +2077,7 @@
<node concept="3cpWsn" id="NKt6ynosmK" role="3cpWs9">
<property role="TrG5h" value="v" />
<node concept="3uibUv" id="2$$Q_FeUyx_" role="1tU5fm">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
<node concept="2OqwBi" id="NKt6ynosmM" role="33vP2m">
<node concept="37vLTw" id="NKt6ynosmN" role="2Oq$k0">
@ -1999,7 +2121,7 @@
<node concept="3cpWsn" id="NKt6ynosn3" role="1Duv9x">
<property role="TrG5h" value="e" />
<node concept="3uibUv" id="2$$Q_FeUyxI" role="1tU5fm">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2OqwBi" id="NKt6ynosn5" role="1DdaDG">
@ -2070,14 +2192,11 @@
<node concept="3cpWsn" id="NKt6ynosnw" role="1Duv9x">
<property role="TrG5h" value="vtx" />
<node concept="3uibUv" id="2$$Q_FeUyxs" role="1tU5fm">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2OqwBi" id="NKt6ynosny" role="1DdaDG">
<node concept="37vLTw" id="NKt6ynosnz" role="2Oq$k0">
<ref role="3cqZAo" node="2$$Q_FeUrRn" resolve="graph" />
</node>
<node concept="T8wYR" id="NKt6ynosn$" role="2OqNvi" />
<node concept="37vLTw" id="1LBj9wAii$b" role="1DdaDG">
<ref role="3cqZAo" node="1LBj9wAigdG" resolve="orderedVts" />
</node>
</node>
<node concept="3clFbH" id="2$$Q_FeUz57" role="3cqZAp" />
@ -2096,7 +2215,7 @@
<ref role="3cqZAo" node="2$$Q_FeUByx" resolve="it" />
</node>
<node concept="2OwXpG" id="2$$Q_FeUC7u" role="2OqNvi">
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTable" />
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
</node>
</node>
@ -2115,11 +2234,11 @@
</node>
<node concept="2tJIrI" id="2$$Q_FeUp9c" role="jymVt" />
<node concept="312cEu" id="2$$Q_FeUi_7" role="jymVt">
<property role="2bfB8j" value="false" />
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="Vtx" />
<node concept="3clFbW" id="2$$Q_FeUj7r" role="jymVt">
<node concept="37vLTG" id="2$$Q_FeUj7B" role="3clF46">
<property role="TrG5h" value="handlerTemplate" />
<property role="TrG5h" value="ruleTemplateTable" />
<node concept="3uibUv" id="2$$Q_FeUj7R" role="1tU5fm">
<ref role="3uigEE" to="i348:4MqhgXU9fm3" resolve="RuleTable" />
</node>
@ -2132,11 +2251,11 @@
<node concept="2OqwBi" id="2$$Q_FeUowV" role="37vLTJ">
<node concept="Xjq3P" id="2$$Q_FeUoxS" role="2Oq$k0" />
<node concept="2OwXpG" id="2$$Q_FeUowY" role="2OqNvi">
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTable" />
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
</node>
<node concept="37vLTw" id="2$$Q_FeUj8d" role="37vLTx">
<ref role="3cqZAo" node="2$$Q_FeUj7B" resolve="handlerTemplate" />
<ref role="3cqZAo" node="2$$Q_FeUj7B" resolve="ruleTemplateTable" />
</node>
</node>
</node>
@ -2151,13 +2270,89 @@
<ref role="3uigEE" to="wyt6:~String" resolve="String" />
</node>
<node concept="3uibUv" id="2$$Q_FeUoz3" role="3rvSg0">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
</node>
<node concept="3cqZAl" id="2$$Q_FeUoy3" role="3clF45" />
<node concept="3Tm6S6" id="2$$Q_FeUoy4" role="1B3o_S" />
<node concept="3clFbS" id="2$$Q_FeUoy5" role="3clF47">
<node concept="3clFbH" id="1LBj9w_E6bv" role="3cqZAp" />
<node concept="3clFbJ" id="1LBj9wAm8Oe" role="3cqZAp">
<node concept="3clFbS" id="1LBj9wAm8Og" role="3clFbx">
<node concept="3cpWs8" id="1LBj9w_E7ht" role="3cqZAp">
<node concept="3cpWsn" id="1LBj9w_E7hu" role="3cpWs9">
<property role="TrG5h" value="mf" />
<node concept="3uibUv" id="1LBj9w_E7gU" role="1tU5fm">
<ref role="3uigEE" to="fqlx:5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
<node concept="2OqwBi" id="1LBj9w_E7hv" role="33vP2m">
<node concept="1eOMI4" id="1LBj9w_E7hw" role="2Oq$k0">
<node concept="10QFUN" id="1LBj9w_E7hx" role="1eOMHV">
<node concept="37vLTw" id="1LBj9w_E7hy" role="10QFUP">
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
<node concept="3uibUv" id="1LBj9w_E7hz" role="10QFUM">
<ref role="3uigEE" to="i348:5EDW3XF5Zh6" resolve="AbstractRuleTable" />
</node>
</node>
</node>
<node concept="liA8E" id="1LBj9w_E7h$" role="2OqNvi">
<ref role="37wK5l" to="i348:1LBj9w_9RCi" resolve="manifest" />
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="1LBj9w_Eb1j" role="3cqZAp">
<node concept="3cpWsn" id="1LBj9w_Eb1k" role="3cpWs9">
<property role="TrG5h" value="asp" />
<node concept="3uibUv" id="1LBj9w_EaZk" role="1tU5fm">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
<node concept="2OqwBi" id="1LBj9w_Eb1l" role="33vP2m">
<node concept="37vLTw" id="1LBj9w_Eb1m" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9w_E7hu" resolve="mf" />
</node>
<node concept="liA8E" id="1LBj9w_Eb1n" role="2OqNvi">
<ref role="37wK5l" to="fqlx:1LBj9w_9VAl" resolve="coderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="1LBj9wAhSpn" role="3cqZAp">
<node concept="37vLTI" id="1LBj9wAhTZL" role="3clFbG">
<node concept="2OqwBi" id="1LBj9wAhUhZ" role="37vLTx">
<node concept="2OqwBi" id="1LBj9wAhUi0" role="2Oq$k0">
<node concept="37vLTw" id="1LBj9wAhUi1" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9w_Elep" resolve="aspectClique" />
</node>
<node concept="liA8E" id="1LBj9wAhUi2" role="2OqNvi">
<ref role="37wK5l" to="fqlx:3KN3A4uUhpW" resolve="aspects" />
</node>
</node>
<node concept="2WmjW8" id="1LBj9wAhUi3" role="2OqNvi">
<node concept="37vLTw" id="1LBj9wAhUi4" role="25WWJ7">
<ref role="3cqZAo" node="1LBj9w_Eb1k" resolve="asp" />
</node>
</node>
</node>
<node concept="2OqwBi" id="1LBj9wAhSOb" role="37vLTJ">
<node concept="Xjq3P" id="1LBj9wAhSpl" role="2Oq$k0" />
<node concept="2OwXpG" id="1LBj9wAhT0K" role="2OqNvi">
<ref role="2Oxat5" node="1LBj9wAhQd1" resolve="priority" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="1LBj9wAm9Md" role="3clFbw">
<node concept="10Nm6u" id="1LBj9wAmaiN" role="3uHU7w" />
<node concept="37vLTw" id="1LBj9wAm9bh" role="3uHU7B">
<ref role="3cqZAo" node="1LBj9w_Elep" resolve="aspectClique" />
</node>
</node>
</node>
<node concept="3clFbH" id="1LBj9wAgE2G" role="3cqZAp" />
<node concept="3clFbJ" id="2$$Q_FeUIf_" role="3cqZAp">
<node concept="3clFbS" id="2$$Q_FeUIfB" role="3clFbx">
<node concept="3clFbF" id="2$$Q_FeUJlu" role="3cqZAp">
@ -2172,7 +2367,7 @@
<node concept="3EllGN" id="2$$Q_FeUN34" role="25WWJ7">
<node concept="2OqwBi" id="2$$Q_FeUZOL" role="3ElVtu">
<node concept="37vLTw" id="2$$Q_FeUZOM" role="2Oq$k0">
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTable" />
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
<node concept="liA8E" id="2$$Q_FeUZON" role="2OqNvi">
<ref role="37wK5l" to="i348:7P_FdVQoGPt" resolve="extendedFqName" />
@ -2193,7 +2388,7 @@
<node concept="2Nt0df" id="2$$Q_FeUJf_" role="2OqNvi">
<node concept="2OqwBi" id="2$$Q_FeUZOO" role="38cxEo">
<node concept="37vLTw" id="2$$Q_FeUZOP" role="2Oq$k0">
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTable" />
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
<node concept="liA8E" id="2$$Q_FeUZOQ" role="2OqNvi">
<ref role="37wK5l" to="i348:7P_FdVQoGPt" resolve="extendedFqName" />
@ -2226,7 +2421,7 @@
<node concept="2OqwBi" id="2$$Q_FeUWsc" role="3clFbw">
<node concept="2OqwBi" id="2$$Q_FeUVRe" role="2Oq$k0">
<node concept="37vLTw" id="2$$Q_FeUVFy" role="2Oq$k0">
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTable" />
<ref role="3cqZAo" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
<node concept="liA8E" id="2$$Q_FeUW5M" role="2OqNvi">
<ref role="37wK5l" to="i348:7P_FdVQoZmr" resolve="fqName" />
@ -2240,7 +2435,7 @@
<ref role="2Gs0qQ" node="2$$Q_FeUQBF" resolve="v" />
</node>
<node concept="2OwXpG" id="2$$Q_FeUUAO" role="2OqNvi">
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTable" />
<ref role="2Oxat5" node="2$$Q_FeUj83" resolve="ruleTemplateTable" />
</node>
</node>
<node concept="liA8E" id="2$$Q_FeUV50" role="2OqNvi">
@ -2263,10 +2458,10 @@
</node>
</node>
</node>
<node concept="2tJIrI" id="2$$Q_FeUj7b" role="jymVt" />
<node concept="2tJIrI" id="1LBj9wAi8_5" role="jymVt" />
<node concept="3Tm6S6" id="2$$Q_FeUj73" role="1B3o_S" />
<node concept="312cEg" id="2$$Q_FeUj83" role="jymVt">
<property role="TrG5h" value="ruleTable" />
<property role="TrG5h" value="ruleTemplateTable" />
<node concept="3Tm6S6" id="2$$Q_FeUj84" role="1B3o_S" />
<node concept="3uibUv" id="2$$Q_FeUj86" role="1tU5fm">
<ref role="3uigEE" to="i348:4MqhgXU9fm3" resolve="RuleTable" />
@ -2277,21 +2472,29 @@
<node concept="3Tm6S6" id="2$$Q_FeUozB" role="1B3o_S" />
<node concept="_YKpA" id="2$$Q_FeUo$c" role="1tU5fm">
<node concept="3uibUv" id="2$$Q_FeUo$m" role="_ZDj9">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
<node concept="2ShNRf" id="2$$Q_FeUoAS" role="33vP2m">
<node concept="Tc6Ow" id="2$$Q_FeUo_G" role="2ShVmc">
<node concept="3uibUv" id="2$$Q_FeUo_H" role="HW$YZ">
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesListTable.Vtx" />
<ref role="3uigEE" node="2$$Q_FeUi_7" resolve="RulesPlanHandler.Vtx" />
</node>
</node>
</node>
</node>
<node concept="312cEg" id="1LBj9wAhQd1" role="jymVt">
<property role="TrG5h" value="priority" />
<node concept="3Tm6S6" id="1LBj9wAhQd2" role="1B3o_S" />
<node concept="10Oyi0" id="1LBj9wAhRRj" role="1tU5fm" />
<node concept="3cmrfG" id="1LBj9wAm81W" role="33vP2m">
<property role="3cmrfH" value="0" />
</node>
</node>
</node>
<node concept="2tJIrI" id="cmlg9NgZ6M" role="jymVt" />
<node concept="312cEu" id="4MqhgXUMauK" role="jymVt">
<property role="TrG5h" value="RuleTableBuilder" />
<property role="TrG5h" value="PlanBuilder" />
<node concept="2tJIrI" id="4MqhgXUMb3v" role="jymVt" />
<node concept="3clFbW" id="4MqhgXUMb4h" role="jymVt">
<node concept="3cqZAl" id="4MqhgXUMb4j" role="3clF45" />
@ -2856,7 +3059,7 @@
</node>
<node concept="2tJIrI" id="4MqhgXUNBTW" role="jymVt" />
<node concept="3clFb_" id="4MqhgXUNDLG" role="jymVt">
<property role="TrG5h" value="toRulesList" />
<property role="TrG5h" value="toRulesPlan" />
<node concept="3uibUv" id="4MqhgXUNEFF" role="3clF45">
<ref role="3uigEE" to="av0y:~RulesList" resolve="RulesList" />
</node>
@ -3028,7 +3231,7 @@
<node concept="3clFbF" id="4MqhgXUNKmT" role="3cqZAp">
<node concept="2ShNRf" id="4MqhgXUNKmP" role="3clFbG">
<node concept="1pGfFk" id="4MqhgXUNKOX" role="2ShVmc">
<ref role="37wK5l" node="4MqhgXUM$CT" resolve="RulesListTable.RulesListImpl" />
<ref role="37wK5l" node="4MqhgXUM$CT" resolve="RulesPlanHandler.RulesPlanImpl" />
<node concept="37vLTw" id="2jxMt584R0F" role="37wK5m">
<ref role="3cqZAo" node="4MqhgXUMb9p" resolve="name" />
</node>
@ -3039,6 +3242,28 @@
</node>
</node>
</node>
<node concept="P$JXv" id="1LBj9w_7moG" role="lGtFl">
<node concept="TZ5HA" id="1LBj9w_7moH" role="TZ5H$">
<node concept="1dT_AC" id="1LBj9w_7moI" role="1dT_Ay">
<property role="1dT_AB" value="Collects the resulting rules plan from the rules collected so far." />
</node>
</node>
<node concept="TZ5HA" id="1LBj9w_7po1" role="TZ5H$">
<node concept="1dT_AC" id="1LBj9w_7po2" role="1dT_Ay">
<property role="1dT_AB" value="The ordering of rules in the plan correspond to partial ordering of rule templates according to " />
</node>
</node>
<node concept="TZ5HA" id="1LBj9w_7pqv" role="TZ5H$">
<node concept="1dT_AC" id="1LBj9w_7pqw" role="1dT_Ay">
<property role="1dT_AB" value="extends relation, and also takes into account the extended languages. " />
</node>
</node>
<node concept="TZ5HA" id="1LBj9w_7psZ" role="TZ5H$">
<node concept="1dT_AC" id="1LBj9w_7pt0" role="1dT_Ay">
<property role="1dT_AB" value="Otherwise, ordering of rules withing the rule template is kept." />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="4MqhgXUMzKi" role="jymVt" />
<node concept="312cEg" id="4MqhgXUMb9p" role="jymVt">
@ -3135,7 +3360,7 @@
</node>
<node concept="2tJIrI" id="cmlg9NhRb0" role="jymVt" />
<node concept="312cEu" id="4MqhgXUMzTQ" role="jymVt">
<property role="TrG5h" value="RulesListImpl" />
<property role="TrG5h" value="RulesPlanImpl" />
<node concept="2tJIrI" id="4MqhgXUM$3u" role="jymVt" />
<node concept="3clFbW" id="4MqhgXUM$CT" role="jymVt">
<node concept="37vLTG" id="2jxMt584M2F" role="3clF46">
@ -3250,16 +3475,15 @@
</node>
</node>
<node concept="2tJIrI" id="cmlg9NhRlY" role="jymVt" />
<node concept="2tJIrI" id="7DvO2M9$xQ6" role="jymVt" />
<node concept="312cEg" id="7DvO2M9Uaig" role="jymVt">
<property role="TrG5h" value="ruleTableBuilders" />
<property role="TrG5h" value="rulePlanBuilders" />
<node concept="3Tm6S6" id="7DvO2M9Uaih" role="1B3o_S" />
<node concept="3rvAFt" id="7DvO2M9Uaii" role="1tU5fm">
<node concept="3uibUv" id="7DvO2M9Uaij" role="3rvQeY">
<ref role="3uigEE" to="i348:4MqhgXU9fm3" resolve="RuleTable" />
</node>
<node concept="3uibUv" id="7DvO2M9Uaik" role="3rvSg0">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
</node>
<node concept="2ShNRf" id="7DvO2M9Uail" role="33vP2m">
@ -3268,13 +3492,13 @@
<ref role="3uigEE" to="i348:4MqhgXU9fm3" resolve="RuleTable" />
</node>
<node concept="3uibUv" id="7DvO2M9Uaio" role="3rHtpV">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
</node>
</node>
</node>
<node concept="312cEg" id="6OXbTDy15hb" role="jymVt">
<property role="TrG5h" value="queryHandlerBuilders" />
<property role="TrG5h" value="queryPlanBuilders" />
<node concept="3Tm6S6" id="6OXbTDy15hc" role="1B3o_S" />
<node concept="3rvAFt" id="6OXbTDy15UP" role="1tU5fm">
<node concept="3uibUv" id="6OXbTD$xHLp" role="3rvQeY">
@ -3282,7 +3506,7 @@
<node concept="3qTvmN" id="6OXbTD$xIpJ" role="11_B2D" />
</node>
<node concept="3uibUv" id="6OXbTDzvogx" role="3rvSg0">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
</node>
<node concept="2ShNRf" id="6OXbTDy164P" role="33vP2m">
@ -3292,7 +3516,19 @@
<node concept="3qTvmN" id="6OXbTD$xJlQ" role="11_B2D" />
</node>
<node concept="3uibUv" id="6OXbTDzvor7" role="3rHtpV">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
</node>
</node>
</node>
<node concept="312cEg" id="1LBj9w_Elep" role="jymVt">
<property role="TrG5h" value="aspectClique" />
<node concept="3Tm6S6" id="1LBj9w_Eleq" role="1B3o_S" />
<node concept="3uibUv" id="1LBj9w_Eles" role="1tU5fm">
<ref role="3uigEE" to="fqlx:3KN3A4uUhmW" resolve="AspectClique" />
<node concept="3qUE_q" id="1LBj9w_Elet" role="11_B2D">
<node concept="3uibUv" id="1LBj9w_Eleu" role="3qUE_r">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
@ -4858,12 +5094,12 @@
<node concept="3clFbF" id="cmlg9OLkT2" role="3cqZAp">
<node concept="37vLTI" id="cmlg9OLpE7" role="3clFbG">
<node concept="37vLTw" id="cmlg9OLrFS" role="37vLTx">
<ref role="3cqZAo" node="cmlg9OLhb5" resolve="rulesListTable" />
<ref role="3cqZAo" node="cmlg9OLhb5" resolve="planHandler" />
</node>
<node concept="2OqwBi" id="cmlg9OLl2O" role="37vLTJ">
<node concept="Xjq3P" id="cmlg9OLkT0" role="2Oq$k0" />
<node concept="2OwXpG" id="cmlg9OLn_U" role="2OqNvi">
<ref role="2Oxat5" node="6tPOoeT4XhE" resolve="rulesListTable" />
<ref role="2Oxat5" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
</node>
</node>
@ -4922,9 +5158,9 @@
</node>
</node>
<node concept="37vLTG" id="cmlg9OLhb5" role="3clF46">
<property role="TrG5h" value="rulesListTable" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="cmlg9OLiZ1" role="1tU5fm">
<ref role="3uigEE" node="7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" node="7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTG" id="cmlg9OJCww" role="3clF46">
@ -5006,7 +5242,7 @@
<node concept="liA8E" id="4MqhgXUSMpw" role="2OqNvi">
<ref role="37wK5l" node="4MqhgXUQoOL" resolve="addRulesList" />
<node concept="37vLTw" id="6tPOoeTbvfq" role="37wK5m">
<ref role="3cqZAo" node="4MqhgXUSKVP" resolve="handler" />
<ref role="3cqZAo" node="4MqhgXUSKVP" resolve="plan" />
</node>
</node>
</node>
@ -5019,17 +5255,17 @@
</node>
</node>
<node concept="3cpWsn" id="4MqhgXUSKVP" role="1Duv9x">
<property role="TrG5h" value="handler" />
<property role="TrG5h" value="plan" />
<node concept="3uibUv" id="4MqhgXUSKVT" role="1tU5fm">
<ref role="3uigEE" to="av0y:~RulesList" resolve="RulesList" />
</node>
</node>
<node concept="2OqwBi" id="6tPOoeTbtQC" role="1DdaDG">
<node concept="37vLTw" id="6tPOoeTbtQD" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeT4XhE" resolve="rulesListTable" />
<ref role="3cqZAo" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
<node concept="liA8E" id="6tPOoeTbtQE" role="2OqNvi">
<ref role="37wK5l" node="7DvO2M9UagU" resolve="allLists" />
<ref role="37wK5l" node="7DvO2M9UagU" resolve="allPlans" />
</node>
</node>
</node>
@ -5140,7 +5376,7 @@
<property role="TrG5h" value="mainRulesListBuilder" />
<node concept="2ShNRf" id="4MqhgXUQinw" role="33vP2m">
<node concept="1pGfFk" id="4MqhgXUQinx" role="2ShVmc">
<ref role="37wK5l" node="4MqhgXUMb4h" resolve="RulesListTable.RuleTableBuilder" />
<ref role="37wK5l" node="4MqhgXUMb4h" resolve="RulesPlanHandler.PlanBuilder" />
<node concept="Xl_RD" id="4MqhgXUQiny" role="37wK5m">
<property role="Xl_RC" value="finish" />
</node>
@ -5157,7 +5393,7 @@
</node>
</node>
<node concept="3uibUv" id="4MqhgXUQinf" role="1tU5fm">
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesListTable.RuleTableBuilder" />
<ref role="3uigEE" node="4MqhgXUMauK" resolve="RulesPlanHandler.PlanBuilder" />
</node>
</node>
<node concept="15s5l7" id="1H_6AUT6WmZ" role="lGtFl">
@ -5205,7 +5441,7 @@
<ref role="3cqZAo" node="4MqhgXUQinv" resolve="mainRulesListBuilder" />
</node>
<node concept="liA8E" id="cmlg9NhrJf" role="2OqNvi">
<ref role="37wK5l" node="4MqhgXUNDLG" resolve="toRulesList" />
<ref role="37wK5l" node="4MqhgXUNDLG" resolve="toRulesPlan" />
</node>
</node>
</node>
@ -7145,7 +7381,7 @@
<node concept="2OqwBi" id="6nFpYltF$g1" role="2Oq$k0">
<node concept="Xjq3P" id="6nFpYltF$g2" role="2Oq$k0" />
<node concept="2OwXpG" id="6nFpYltF$g3" role="2OqNvi">
<ref role="2Oxat5" node="6tPOoeT4XhE" resolve="rulesListTable" />
<ref role="2Oxat5" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
</node>
<node concept="liA8E" id="6nFpYltF$g4" role="2OqNvi">
@ -7712,7 +7948,7 @@
<node concept="2OqwBi" id="6tPOoeT52Fu" role="2Oq$k0">
<node concept="Xjq3P" id="6tPOoeT524B" role="2Oq$k0" />
<node concept="2OwXpG" id="6tPOoeT538g" role="2OqNvi">
<ref role="2Oxat5" node="6tPOoeT4XhE" resolve="rulesListTable" />
<ref role="2Oxat5" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
</node>
<node concept="liA8E" id="6tPOoeT544o" role="2OqNvi">
@ -9846,10 +10082,10 @@
</node>
</node>
<node concept="312cEg" id="6tPOoeT4XhE" role="jymVt">
<property role="TrG5h" value="rulesListTable" />
<property role="TrG5h" value="planHandler" />
<node concept="3Tm6S6" id="6tPOoeT4XhF" role="1B3o_S" />
<node concept="3uibUv" id="6tPOoeT51Qn" role="1tU5fm">
<ref role="3uigEE" node="7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" node="7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="312cEg" id="6i42QSsj_y2" role="jymVt">
@ -10769,7 +11005,7 @@
</node>
<node concept="2ShNRf" id="2Z9ItkdbsEW" role="33vP2m">
<node concept="1pGfFk" id="2Z9Itkdbt2w" role="2ShVmc">
<ref role="37wK5l" node="4MqhgXUM$CT" resolve="RulesListTable.RulesListImpl" />
<ref role="37wK5l" node="4MqhgXUM$CT" resolve="RulesPlanHandler.RulesPlanImpl" />
<node concept="2OqwBi" id="2Z9Itkdbtcw" role="37wK5m">
<node concept="37vLTw" id="2Z9Itkdbt6J" role="2Oq$k0">
<ref role="3cqZAo" node="4MqhgXUQrZn" resolve="rulesList" />

View File

@ -1573,8 +1573,8 @@
<node concept="liA8E" id="tyIfzC3yam" role="2OqNvi">
<ref role="37wK5l" to="hano:7kTeLbPojCz" resolve="produce" />
<node concept="2ShNRf" id="7i3KM7g6AYw" role="37wK5m">
<node concept="HV5vD" id="7i3KM7g6COo" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EO8x" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_EhDG" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="2ShNRf" id="tyIfzC3yan" role="37wK5m">

View File

@ -3570,8 +3570,8 @@
<node concept="liA8E" id="6$7vuu2ujxU" role="2OqNvi">
<ref role="37wK5l" to="hano:7kTeLbPojCz" resolve="produce" />
<node concept="2ShNRf" id="7i3KM7g6AYw" role="37wK5m">
<node concept="HV5vD" id="7i3KM7g6COo" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EPn0" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_EhDG" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="2ShNRf" id="3IIf9O_jdGL" role="37wK5m">

View File

@ -134,9 +134,6 @@
<child id="1188208488637" name="annotation" index="2AJF6D" />
</concept>
<concept id="1095950406618" name="jetbrains.mps.baseLanguage.structure.DivExpression" flags="nn" index="FJ1c_" />
<concept id="2820489544401957797" name="jetbrains.mps.baseLanguage.structure.DefaultClassCreator" flags="nn" index="HV5vD">
<reference id="2820489544401957798" name="classifier" index="HV5vE" />
</concept>
<concept id="1154032098014" name="jetbrains.mps.baseLanguage.structure.AbstractLoopStatement" flags="nn" index="2LF5Ji">
<child id="1154032183016" name="body" index="2LFqv$" />
</concept>
@ -1024,8 +1021,8 @@
<ref role="3cqZAo" node="6nFpYlun1LV" resolve="repository" />
</node>
<node concept="2ShNRf" id="6nFpYluqJHO" role="37wK5m">
<node concept="HV5vD" id="6nFpYluqNL_" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_ERR0" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_EhDG" resolve="RulesPlanHandler" />
</node>
</node>
</node>
@ -3401,8 +3398,8 @@
<ref role="3cqZAo" node="7WKNeR8SQxI" resolve="repository" />
</node>
<node concept="2ShNRf" id="6nFpYluqYB0" role="37wK5m">
<node concept="HV5vD" id="6nFpYluqZMB" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EURb" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_EhDG" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTw" id="5EDW3XEprPs" role="37wK5m">

View File

@ -5818,22 +5818,22 @@
</node>
<node concept="2tJIrI" id="6$F3Z5zitgo" role="jymVt" />
<node concept="Wx3nA" id="6nFpYlvf3Cm" role="jymVt">
<property role="TrG5h" value="RULES" />
<property role="TrG5h" value="RULES_PLAN_HANDLER" />
<node concept="3uibUv" id="6nFpYlvf3Co" role="1tU5fm">
<ref role="3uigEE" node="7i3KM7g1Lm1" resolve="CachedData.DataFlavour" />
<node concept="3uibUv" id="6nFpYlvf3Cp" role="11_B2D">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="2ShNRf" id="6nFpYlvf3Cq" role="33vP2m">
<node concept="1pGfFk" id="6nFpYlvf3Cr" role="2ShVmc">
<ref role="37wK5l" node="7i3KM7g1T3X" resolve="CachedData.DataFlavour" />
<node concept="3uibUv" id="6nFpYlvf3Cs" role="1pMfVU">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
<node concept="2OqwBi" id="6nFpYlvf3Ct" role="37wK5m">
<node concept="3VsKOn" id="6nFpYlvf3Cu" role="2Oq$k0">
<ref role="3VsUkX" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3VsUkX" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
<node concept="liA8E" id="6nFpYlvf3Cv" role="2OqNvi">
<ref role="37wK5l" to="wyt6:~Class.getName()" resolve="getName" />
@ -9316,7 +9316,9 @@
<property role="TrG5h" value="aspectClique" />
<node concept="3uibUv" id="7i3KM7glTNq" role="1tU5fm">
<ref role="3uigEE" to="fqlx:3KN3A4uUhmW" resolve="AspectClique" />
<node concept="3qTvmN" id="7i3KM7gwg4R" role="11_B2D" />
<node concept="3uibUv" id="1LBj9wA0so5" role="11_B2D">
<ref role="3uigEE" to="u46i:7km57Pkjxf4" resolve="TypecheckingAspect" />
</node>
</node>
</node>
<node concept="37vLTw" id="7i3KM7gvJAm" role="1DdaDG">
@ -12578,9 +12580,9 @@
</node>
</node>
<node concept="37vLTG" id="6nFpYluqHqg" role="3clF46">
<property role="TrG5h" value="rules" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="6nFpYluqHIQ" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTG" id="6nFpYluWRTo" role="3clF46">
@ -12632,7 +12634,7 @@
<ref role="3cqZAo" node="7WKNeR9fh8_" resolve="repository" />
</node>
<node concept="37vLTw" id="6nFpYlurvki" role="37wK5m">
<ref role="3cqZAo" node="6nFpYluqHqg" resolve="rules" />
<ref role="3cqZAo" node="6nFpYluqHqg" resolve="planHandler" />
</node>
<node concept="37vLTw" id="5EDW3XEtZSk" role="37wK5m">
<ref role="3cqZAo" node="5EDW3XEtX7J" resolve="query" />
@ -12821,7 +12823,7 @@
<node concept="3clFbF" id="51ek2rQMJ0a" role="3cqZAp">
<node concept="2OqwBi" id="51ek2rQMJ0b" role="3clFbG">
<node concept="37vLTw" id="51ek2rQMJ0c" role="2Oq$k0">
<ref role="3cqZAo" to="1yqb:6nFpYluqFen" resolve="rules" />
<ref role="3cqZAo" to="1yqb:6nFpYluqFen" resolve="planHandler" />
</node>
<node concept="liA8E" id="51ek2rQMJ0d" role="2OqNvi">
<ref role="37wK5l" to="ksgm:cmlg9OuIxN" resolve="invalidate" />
@ -14990,7 +14992,11 @@
<property role="TrG5h" value="aspectClique" />
<node concept="3uibUv" id="7i3KM7gIVm_" role="1tU5fm">
<ref role="3uigEE" to="fqlx:3KN3A4uUhmW" resolve="AspectClique" />
<node concept="3qTvmN" id="6nFpYlupoki" role="11_B2D" />
<node concept="3qUE_q" id="1LBj9w_TASS" role="11_B2D">
<node concept="3uibUv" id="1LBj9w_TBJp" role="3qUE_r">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="7i3KM7gIXYC" role="3clF46">
@ -15063,8 +15069,11 @@
</node>
</node>
<node concept="2ShNRf" id="6nFpYlushsr" role="37wK5m">
<node concept="HV5vD" id="6nFpYlushss" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EIjy" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_Ebf5" resolve="RulesPlanHandler" />
<node concept="37vLTw" id="1LBj9w_EIQl" role="37wK5m">
<ref role="3cqZAo" node="7i3KM7gIUOR" resolve="aspectClique" />
</node>
</node>
</node>
<node concept="37vLTw" id="5EDW3XErDAu" role="37wK5m">
@ -15792,7 +15801,11 @@
<property role="TrG5h" value="aspectClique" />
<node concept="3uibUv" id="3OUB6BBaXxP" role="1tU5fm">
<ref role="3uigEE" to="fqlx:3KN3A4uUhmW" resolve="AspectClique" />
<node concept="3qTvmN" id="3OUB6BBaXxQ" role="11_B2D" />
<node concept="3qUE_q" id="1LBj9w_TC_F" role="11_B2D">
<node concept="3uibUv" id="1LBj9w_TDuF" role="3qUE_r">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="3OUB6BBaXxR" role="3clF46">
@ -15901,8 +15914,11 @@
</node>
</node>
<node concept="2ShNRf" id="3OUB6BBbeP3" role="37wK5m">
<node concept="HV5vD" id="3OUB6BBbeP4" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EJo2" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_Ebf5" resolve="RulesPlanHandler" />
<node concept="37vLTw" id="1LBj9w_EK1R" role="37wK5m">
<ref role="3cqZAo" node="3OUB6BBaXxO" resolve="aspectClique" />
</node>
</node>
</node>
<node concept="37vLTw" id="3OUB6BBbeP5" role="37wK5m">
@ -16574,7 +16590,11 @@
<property role="TrG5h" value="aspectClique" />
<node concept="3uibUv" id="6nFpYlusyqf" role="1tU5fm">
<ref role="3uigEE" to="fqlx:3KN3A4uUhmW" resolve="AspectClique" />
<node concept="3qTvmN" id="6nFpYlusyqg" role="11_B2D" />
<node concept="3qUE_q" id="1LBj9w_TEHO" role="11_B2D">
<node concept="3uibUv" id="1LBj9w_TFh4" role="3qUE_r">
<ref role="3uigEE" to="fqlx:NKt6yomNZE" resolve="CoderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="6nFpYlusyqh" role="3clF46">
@ -16593,7 +16613,7 @@
</node>
<node concept="3uibUv" id="6nFpYlusyqo" role="3clF45">
<ref role="3uigEE" to="1yqb:1pPth$lAwc0" resolve="ApplyTemplatesStep" />
<node concept="3qTvmN" id="6nFpYlusyqp" role="11_B2D" />
<node concept="3qTvmN" id="1LBj9w_TEAs" role="11_B2D" />
</node>
<node concept="3Tmbuc" id="5Qx6_65qQxN" role="1B3o_S" />
<node concept="3clFbS" id="6nFpYlusyqQ" role="3clF47">
@ -16648,9 +16668,9 @@
<node concept="3clFbH" id="61G6TdBAyAj" role="3cqZAp" />
<node concept="3cpWs8" id="6nFpYluFUzo" role="3cqZAp">
<node concept="3cpWsn" id="6nFpYluFUzp" role="3cpWs9">
<property role="TrG5h" value="table" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="6nFpYluFQLx" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
<node concept="2OqwBi" id="6nFpYluNd7o" role="33vP2m">
<node concept="1rXfSq" id="3OUB6BByx8B" role="2Oq$k0">
@ -16663,14 +16683,17 @@
<ref role="37wK5l" node="7z54$fPgk2E" resolve="getOrSet" />
<node concept="10M0yZ" id="61G6TdCq_qt" role="37wK5m">
<ref role="1PxDUh" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="3cqZAo" node="6nFpYlvf3Cm" resolve="RULES" />
<ref role="3cqZAo" node="6nFpYlvf3Cm" resolve="RULES_PLAN_HANDLER" />
</node>
<node concept="1bVj0M" id="6nFpYlvf2M8" role="37wK5m">
<node concept="3clFbS" id="6nFpYlvf2Ma" role="1bW5cS">
<node concept="3clFbF" id="6nFpYlvf35u" role="3cqZAp">
<node concept="2ShNRf" id="6nFpYlvf35w" role="3clFbG">
<node concept="HV5vD" id="6nFpYlvf35x" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EJo4" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_Ebf5" resolve="RulesPlanHandler" />
<node concept="37vLTw" id="1LBj9w_EKEL" role="37wK5m">
<ref role="3cqZAo" node="6nFpYlusyqe" resolve="aspectClique" />
</node>
</node>
</node>
</node>
@ -16861,7 +16884,7 @@
</node>
</node>
<node concept="37vLTw" id="6nFpYluFUzs" role="37wK5m">
<ref role="3cqZAo" node="6nFpYluFUzp" resolve="table" />
<ref role="3cqZAo" node="6nFpYluFUzp" resolve="planHandler" />
</node>
<node concept="37vLTw" id="6nFpYlvf$Xe" role="37wK5m">
<ref role="3cqZAo" node="6nFpYlvfyc$" resolve="originIndex" />

View File

@ -544,11 +544,11 @@
<node concept="2OqwBi" id="6nFpYluqGJ3" role="37vLTJ">
<node concept="Xjq3P" id="6nFpYluqGRk" role="2Oq$k0" />
<node concept="2OwXpG" id="6nFpYluqHj6" role="2OqNvi">
<ref role="2Oxat5" node="6nFpYluqFen" resolve="rules" />
<ref role="2Oxat5" node="6nFpYluqFen" resolve="planHandler" />
</node>
</node>
<node concept="37vLTw" id="6nFpYluqFex" role="37vLTx">
<ref role="3cqZAo" node="6nFpYluqCFz" resolve="rules" />
<ref role="3cqZAo" node="6nFpYluqCFz" resolve="planHandler" />
</node>
</node>
</node>
@ -647,9 +647,9 @@
</node>
</node>
<node concept="37vLTG" id="6nFpYluqCFz" role="3clF46">
<property role="TrG5h" value="rules" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="6nFpYluqD3K" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
</node>
@ -745,11 +745,11 @@
<node concept="2OqwBi" id="5EDW3XEoy5_" role="37vLTJ">
<node concept="Xjq3P" id="5EDW3XEoy5A" role="2Oq$k0" />
<node concept="2OwXpG" id="5EDW3XEoy5B" role="2OqNvi">
<ref role="2Oxat5" node="6nFpYluqFen" resolve="rules" />
<ref role="2Oxat5" node="6nFpYluqFen" resolve="planHandler" />
</node>
</node>
<node concept="37vLTw" id="5EDW3XEoy5C" role="37vLTx">
<ref role="3cqZAo" node="5EDW3XEoy5V" resolve="rules" />
<ref role="3cqZAo" node="5EDW3XEoy5V" resolve="planHandler" />
</node>
</node>
</node>
@ -794,9 +794,9 @@
</node>
</node>
<node concept="37vLTG" id="5EDW3XEoy5V" role="3clF46">
<property role="TrG5h" value="rules" />
<property role="TrG5h" value="planHandler" />
<node concept="3uibUv" id="5EDW3XEoy5W" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTG" id="5EDW3XEoy5X" role="3clF46">
@ -1108,7 +1108,7 @@
<node concept="liA8E" id="7kTeLbPtIoY" role="2OqNvi">
<ref role="37wK5l" to="hano:7kTeLbPojCz" resolve="produce" />
<node concept="37vLTw" id="6nFpYlur4Wi" role="37wK5m">
<ref role="3cqZAo" node="6nFpYluqFen" resolve="rules" />
<ref role="3cqZAo" node="6nFpYluqFen" resolve="planHandler" />
</node>
<node concept="37vLTw" id="7kTeLbPtKEF" role="37wK5m">
<ref role="3cqZAo" node="7kTeLbPt5$3" resolve="nodes" />
@ -1357,10 +1357,10 @@
</node>
</node>
<node concept="312cEg" id="6nFpYluqFen" role="jymVt">
<property role="TrG5h" value="rules" />
<property role="TrG5h" value="planHandler" />
<node concept="3Tmbuc" id="6nFpYlurNeP" role="1B3o_S" />
<node concept="3uibUv" id="6nFpYluqFeq" role="1tU5fm">
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<ref role="3uigEE" to="ksgm:7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="312cEg" id="7kTeLbPt5$3" role="jymVt">

View File

@ -106,9 +106,6 @@
<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" />
@ -1110,8 +1107,8 @@
<ref role="3cqZAo" node="7WKNeR8SQxI" resolve="repository" />
</node>
<node concept="2ShNRf" id="6nFpYlur12C" role="37wK5m">
<node concept="HV5vD" id="6nFpYlur2oF" role="2ShVmc">
<ref role="HV5vE" to="ksgm:7DvO2M9Uago" resolve="RulesListTable" />
<node concept="1pGfFk" id="1LBj9w_EVRM" role="2ShVmc">
<ref role="37wK5l" to="ksgm:1LBj9w_EhDG" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="37vLTw" id="7WKNeR9foS9" role="37wK5m">

View File

@ -285,6 +285,7 @@
</concept>
<concept id="3358009230508699637" name="jetbrains.mps.baseLanguage.collections.structure.PopOperation" flags="nn" index="2AryhJ" />
<concept id="3358009230508699932" name="jetbrains.mps.baseLanguage.collections.structure.PushOperation" flags="nn" index="2ArzE6" />
<concept id="1151702311717" name="jetbrains.mps.baseLanguage.collections.structure.ToListOperation" flags="nn" index="ANE8D" />
<concept id="1226934395923" name="jetbrains.mps.baseLanguage.collections.structure.ClearSetOperation" flags="nn" index="2EZike" />
<concept id="1237721394592" name="jetbrains.mps.baseLanguage.collections.structure.AbstractContainerCreator" flags="nn" index="HWqM0">
<child id="1237721435807" name="elementType" index="HW$YZ" />
@ -297,11 +298,15 @@
<child id="1201654602639" name="key" index="38cxEo" />
</concept>
<concept id="1203518072036" name="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" flags="ig" index="Rh6nW" />
<concept id="1205679737078" name="jetbrains.mps.baseLanguage.collections.structure.SortOperation" flags="nn" index="2S7cBI">
<child id="1205679832066" name="ascending" index="2S7zOq" />
</concept>
<concept id="1237909114519" name="jetbrains.mps.baseLanguage.collections.structure.GetValuesOperation" flags="nn" index="T8wYR" />
<concept id="1160600644654" name="jetbrains.mps.baseLanguage.collections.structure.ListCreatorWithInit" flags="nn" index="Tc6Ow" />
<concept id="1160612413312" name="jetbrains.mps.baseLanguage.collections.structure.AddElementOperation" flags="nn" index="TSZUe" />
<concept id="1160666733551" name="jetbrains.mps.baseLanguage.collections.structure.AddAllElementsOperation" flags="nn" index="X8dFx" />
<concept id="1167380149909" name="jetbrains.mps.baseLanguage.collections.structure.RemoveElementOperation" flags="nn" index="3dhRuq" />
<concept id="1178286324487" name="jetbrains.mps.baseLanguage.collections.structure.SortDirection" flags="nn" index="1nlBCl" />
<concept id="1197683403723" name="jetbrains.mps.baseLanguage.collections.structure.MapType" flags="in" index="3rvAFt">
<child id="1197683466920" name="keyType" index="3rvQeY" />
<child id="1197683475734" name="valueType" index="3rvSg0" />
@ -1169,7 +1174,7 @@
<property role="TrG5h" value="CoderulesAspect" />
<node concept="2tJIrI" id="NKt6yomOnK" role="jymVt" />
<node concept="3clFb_" id="5EDW3XF61A_" role="jymVt">
<property role="TrG5h" value="manifest" />
<property role="TrG5h" value="createManifest" />
<node concept="3uibUv" id="5EDW3XF61BW" role="3clF45">
<ref role="3uigEE" node="5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
@ -2999,6 +3004,54 @@
</node>
</node>
<node concept="3clFbH" id="3Vcd0Fo3j_Z" role="3cqZAp" />
<node concept="3cpWs8" id="1LBj9wAGJhL" role="3cqZAp">
<node concept="3cpWsn" id="1LBj9wAGJhM" role="3cpWs9">
<property role="TrG5h" value="orderedVts" />
<node concept="A3Dl8" id="1LBj9wAGF$L" role="1tU5fm">
<node concept="3uibUv" id="1LBj9wAGF$O" role="A3Ik2">
<ref role="3uigEE" node="3KN3A4uUwll" resolve="AspectClique.CliqueBuilder.Vtx" />
</node>
</node>
<node concept="2OqwBi" id="1LBj9wAGOzt" role="33vP2m">
<node concept="2OqwBi" id="1LBj9wAGLFF" role="2Oq$k0">
<node concept="2OqwBi" id="1LBj9wAGJhN" role="2Oq$k0">
<node concept="37vLTw" id="1LBj9wAGJhO" role="2Oq$k0">
<ref role="3cqZAo" node="3Vcd0Fo3j_a" resolve="graph" />
</node>
<node concept="T8wYR" id="1LBj9wAGJhP" role="2OqNvi" />
</node>
<node concept="2S7cBI" id="1LBj9wAGNox" role="2OqNvi">
<node concept="1bVj0M" id="1LBj9wAGNoz" role="23t8la">
<node concept="3clFbS" id="1LBj9wAGNo$" role="1bW5cS">
<node concept="3clFbF" id="1LBj9wAL8AV" role="3cqZAp">
<node concept="2YIFZM" id="1LBj9wAL8Og" role="3clFbG">
<ref role="37wK5l" to="wyt6:~System.identityHashCode(java.lang.Object)" resolve="identityHashCode" />
<ref role="1Pybhc" to="wyt6:~System" resolve="System" />
<node concept="2OqwBi" id="1LBj9wAL9oI" role="37wK5m">
<node concept="37vLTw" id="1LBj9wAL97J" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9wAGNo_" resolve="it" />
</node>
<node concept="2OwXpG" id="1LBj9wAL9QC" role="2OqNvi">
<ref role="2Oxat5" node="3KN3A4uUwms" resolve="lang" />
</node>
</node>
</node>
</node>
</node>
<node concept="Rh6nW" id="1LBj9wAGNo_" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="1LBj9wAGNoA" role="1tU5fm" />
</node>
</node>
<node concept="1nlBCl" id="1LBj9wAGNoB" role="2S7zOq">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
<node concept="ANE8D" id="1LBj9wAGPwX" role="2OqNvi" />
</node>
</node>
</node>
<node concept="1DcWWT" id="3Vcd0Fo3jA0" role="3cqZAp">
<node concept="3clFbS" id="3Vcd0Fo3jA1" role="2LFqv$">
<node concept="3clFbJ" id="3Vcd0Fo3jA2" role="3cqZAp">
@ -3165,21 +3218,55 @@
</node>
</node>
<node concept="3clFbH" id="3Vcd0Fo3jBa" role="3cqZAp" />
<node concept="3cpWs8" id="3Vcd0Fo7KSu" role="3cqZAp">
<node concept="3cpWsn" id="3Vcd0Fo7KSv" role="3cpWs9">
<property role="TrG5h" value="allExtends" />
<node concept="2hMVRd" id="_tf6v$f8m9" role="1tU5fm">
<node concept="3uibUv" id="_tf6v$f8mb" role="2hN53Y">
<node concept="3cpWs8" id="1LBj9wAJNTy" role="3cqZAp">
<node concept="3cpWsn" id="1LBj9wAJNTz" role="3cpWs9">
<property role="TrG5h" value="orderedExtends" />
<node concept="_YKpA" id="1LBj9wAJNS1" role="1tU5fm">
<node concept="3uibUv" id="1LBj9wAJNS4" role="_ZDj9">
<ref role="3uigEE" node="3KN3A4uUwll" resolve="AspectClique.CliqueBuilder.Vtx" />
</node>
</node>
<node concept="2OqwBi" id="3Vcd0Fo7KSw" role="33vP2m">
<node concept="37vLTw" id="3Vcd0Fo7KSx" role="2Oq$k0">
<ref role="3cqZAo" node="3Vcd0Fo3jAi" resolve="v" />
</node>
<node concept="2OwXpG" id="3Vcd0Fo7KSy" role="2OqNvi">
<ref role="2Oxat5" node="3KN3A4uUwmv" resolve="allExtends" />
<node concept="2OqwBi" id="1LBj9wAJNT$" role="33vP2m">
<node concept="2OqwBi" id="1LBj9wAJNT_" role="2Oq$k0">
<node concept="1eOMI4" id="1LBj9wAJQAw" role="2Oq$k0">
<node concept="2OqwBi" id="1LBj9wAJQAt" role="1eOMHV">
<node concept="37vLTw" id="1LBj9wAJQAu" role="2Oq$k0">
<ref role="3cqZAo" node="3Vcd0Fo3jAi" resolve="v" />
</node>
<node concept="2OwXpG" id="1LBj9wAJQAv" role="2OqNvi">
<ref role="2Oxat5" node="3KN3A4uUwmv" resolve="allExtends" />
</node>
</node>
</node>
<node concept="2S7cBI" id="1LBj9wAJNTB" role="2OqNvi">
<node concept="1bVj0M" id="1LBj9wAJNTC" role="23t8la">
<node concept="3clFbS" id="1LBj9wAJNTD" role="1bW5cS">
<node concept="3clFbF" id="1LBj9wAJNTE" role="3cqZAp">
<node concept="2YIFZM" id="1LBj9wAJNTF" role="3clFbG">
<ref role="37wK5l" to="wyt6:~System.identityHashCode(java.lang.Object)" resolve="identityHashCode" />
<ref role="1Pybhc" to="wyt6:~System" resolve="System" />
<node concept="2OqwBi" id="1LBj9wALar6" role="37wK5m">
<node concept="37vLTw" id="1LBj9wAJNTG" role="2Oq$k0">
<ref role="3cqZAo" node="1LBj9wAJNTH" resolve="it" />
</node>
<node concept="2OwXpG" id="1LBj9wALb3d" role="2OqNvi">
<ref role="2Oxat5" node="3KN3A4uUwms" resolve="lang" />
</node>
</node>
</node>
</node>
</node>
<node concept="Rh6nW" id="1LBj9wAJNTH" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="1LBj9wAJNTI" role="1tU5fm" />
</node>
</node>
<node concept="1nlBCl" id="1LBj9wAJNTJ" role="2S7zOq">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
<node concept="ANE8D" id="1LBj9wAJNTK" role="2OqNvi" />
</node>
</node>
</node>
@ -3236,8 +3323,8 @@
<ref role="3uigEE" node="3KN3A4uUwll" resolve="AspectClique.CliqueBuilder.Vtx" />
</node>
</node>
<node concept="37vLTw" id="3Vcd0Fo7KSz" role="1DdaDG">
<ref role="3cqZAo" node="3Vcd0Fo7KSv" resolve="allExtends" />
<node concept="37vLTw" id="1LBj9wAJNTL" role="1DdaDG">
<ref role="3cqZAo" node="1LBj9wAJNTz" resolve="orderedExtends" />
</node>
</node>
</node>
@ -3257,11 +3344,8 @@
<ref role="3uigEE" node="3KN3A4uUwll" resolve="AspectClique.CliqueBuilder.Vtx" />
</node>
</node>
<node concept="2OqwBi" id="3Vcd0Fo3jBE" role="1DdaDG">
<node concept="37vLTw" id="3Vcd0Fo3jBF" role="2Oq$k0">
<ref role="3cqZAo" node="3Vcd0Fo3j_a" resolve="graph" />
</node>
<node concept="T8wYR" id="3Vcd0Fo3jBG" role="2OqNvi" />
<node concept="37vLTw" id="1LBj9wAGJhQ" role="1DdaDG">
<ref role="3cqZAo" node="1LBj9wAGJhM" resolve="orderedVts" />
</node>
</node>
<node concept="3clFbF" id="3Vcd0Fo3jBH" role="3cqZAp">
@ -4865,7 +4949,48 @@
<node concept="312cEu" id="5EDW3XF5Z95">
<property role="TrG5h" value="AbstractCoderulesManifest" />
<property role="1sVAO0" value="true" />
<node concept="2tJIrI" id="1LBj9w_9VfE" role="jymVt" />
<node concept="3clFbW" id="1LBj9w_9VgG" role="jymVt">
<node concept="3cqZAl" id="1LBj9w_9VgI" role="3clF45" />
<node concept="3Tm1VV" id="1LBj9w_9VgJ" role="1B3o_S" />
<node concept="3clFbS" id="1LBj9w_9VgK" role="3clF47">
<node concept="3clFbF" id="1LBj9w_9Vjg" role="3cqZAp">
<node concept="37vLTI" id="1LBj9w_9Vji" role="3clFbG">
<node concept="2OqwBi" id="1LBj9w_9VmX" role="37vLTJ">
<node concept="Xjq3P" id="1LBj9w_9Vns" role="2Oq$k0" />
<node concept="2OwXpG" id="1LBj9w_9Vn0" role="2OqNvi">
<ref role="2Oxat5" node="1LBj9w_9Vjc" resolve="coderulesAspect" />
</node>
</node>
<node concept="37vLTw" id="1LBj9w_9Vjm" role="37vLTx">
<ref role="3cqZAo" node="1LBj9w_9VhA" resolve="coderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="1LBj9w_9VhA" role="3clF46">
<property role="TrG5h" value="coderulesAspect" />
<node concept="3uibUv" id="1LBj9w_9Vh_" role="1tU5fm">
<ref role="3uigEE" node="NKt6yp1COZ" resolve="AbstractCoderulesAspect" />
</node>
</node>
</node>
<node concept="2tJIrI" id="5EDW3XF5Zad" role="jymVt" />
<node concept="3clFb_" id="1LBj9w_9VAl" role="jymVt">
<property role="TrG5h" value="coderulesAspect" />
<node concept="3uibUv" id="1LBj9w_9VCY" role="3clF45">
<ref role="3uigEE" node="NKt6yomNZE" resolve="CoderulesAspect" />
</node>
<node concept="3Tm1VV" id="1LBj9w_9VAo" role="1B3o_S" />
<node concept="3clFbS" id="1LBj9w_9VAp" role="3clF47">
<node concept="3clFbF" id="1LBj9w_9VJ3" role="3cqZAp">
<node concept="37vLTw" id="1LBj9w_9VJ2" role="3clFbG">
<ref role="3cqZAo" node="1LBj9w_9Vjc" resolve="coderulesAspect" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="1LBj9w_9VFL" role="jymVt" />
<node concept="3clFb_" id="6UWSvq4Vu5V" role="jymVt">
<property role="TrG5h" value="macroTables" />
<property role="1EzhhJ" value="true" />
@ -4912,6 +5037,14 @@
</node>
</node>
<node concept="2tJIrI" id="5EDW3XF5Zai" role="jymVt" />
<node concept="312cEg" id="1LBj9w_9Vjc" role="jymVt">
<property role="TrG5h" value="coderulesAspect" />
<node concept="3Tm6S6" id="1LBj9w_9Vjd" role="1B3o_S" />
<node concept="3uibUv" id="1LBj9w_9Vjf" role="1tU5fm">
<ref role="3uigEE" node="NKt6yp1COZ" resolve="AbstractCoderulesAspect" />
</node>
</node>
<node concept="2tJIrI" id="1LBj9w_9VzP" role="jymVt" />
<node concept="3Tm1VV" id="5EDW3XF5Z96" role="1B3o_S" />
</node>
</model>

View File

@ -30,6 +30,7 @@
<import index="d6hs" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.errors.item(MPS.Core/)" />
<import index="2gg1" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.errors(MPS.Core/)" />
<import index="lehm" ref="r:464fcc95-fddb-47d1-b620-592cbf6b8bf2(jetbrains.mps.coderules.runtime.memoizer)" />
<import index="fqlx" ref="r:2cc226a9-8a78-4010-b962-823343fd28ff(jetbrains.mps.lang.coderules.aspect)" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
@ -7869,6 +7870,56 @@
<property role="3GE5qa" value="rule" />
<property role="TrG5h" value="AbstractRuleTable" />
<property role="1sVAO0" value="true" />
<node concept="2tJIrI" id="1LBj9w_9RBB" role="jymVt" />
<node concept="3clFbW" id="1LBj9w_9RIX" role="jymVt">
<node concept="37vLTG" id="1LBj9w_9RJS" role="3clF46">
<property role="TrG5h" value="manifest" />
<node concept="3uibUv" id="1LBj9w_9RLv" role="1tU5fm">
<ref role="3uigEE" to="fqlx:5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
</node>
<node concept="3cqZAl" id="1LBj9w_9RIZ" role="3clF45" />
<node concept="3Tm1VV" id="1LBj9w_9RJ0" role="1B3o_S" />
<node concept="3clFbS" id="1LBj9w_9RJ1" role="3clF47">
<node concept="3clFbF" id="1LBj9w_9RN6" role="3cqZAp">
<node concept="37vLTI" id="1LBj9w_9RN8" role="3clFbG">
<node concept="2OqwBi" id="1LBj9w_9RUg" role="37vLTJ">
<node concept="Xjq3P" id="1LBj9w_9RUS" role="2Oq$k0" />
<node concept="2OwXpG" id="1LBj9w_9RUj" role="2OqNvi">
<ref role="2Oxat5" node="1LBj9w_9RN2" resolve="manifest" />
</node>
</node>
<node concept="37vLTw" id="1LBj9w_9RNc" role="37vLTx">
<ref role="3cqZAo" node="1LBj9w_9RJS" resolve="manifest" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="1LBj9w_9RIi" role="jymVt" />
<node concept="3clFb_" id="1LBj9w_9RCi" role="jymVt">
<property role="TrG5h" value="manifest" />
<node concept="3uibUv" id="1LBj9w_9REs" role="3clF45">
<ref role="3uigEE" to="fqlx:5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
<node concept="3Tm1VV" id="1LBj9w_9RCl" role="1B3o_S" />
<node concept="3clFbS" id="1LBj9w_9RCm" role="3clF47">
<node concept="3clFbF" id="1LBj9w_9RWP" role="3cqZAp">
<node concept="37vLTw" id="1LBj9w_9RWO" role="3clFbG">
<ref role="3cqZAo" node="1LBj9w_9RN2" resolve="manifest" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="1LBj9w_9RBG" role="jymVt" />
<node concept="312cEg" id="1LBj9w_9RN2" role="jymVt">
<property role="TrG5h" value="manifest" />
<node concept="3Tm6S6" id="1LBj9w_9RN3" role="1B3o_S" />
<node concept="3uibUv" id="1LBj9w_9RN5" role="1tU5fm">
<ref role="3uigEE" to="fqlx:5EDW3XF5Z95" resolve="AbstractCoderulesManifest" />
</node>
</node>
<node concept="2tJIrI" id="1LBj9w_9RYl" role="jymVt" />
<node concept="3Tm1VV" id="5EDW3XF5Zh7" role="1B3o_S" />
<node concept="3uibUv" id="5EDW3XF5ZiM" role="EKbjA">
<ref role="3uigEE" node="4MqhgXU9fm3" resolve="RuleTable" />