Use UpdatesRecorder to control whether to apply templates

Invalidated and introduced nodes are collected by UpdatesRecorder.
If either set is not empty, a walk of the input is triggered.
Also, drop invalidated flag in RulesPlanHandler.
This commit is contained in:
Fedor Isakov 2021-01-17 15:01:13 +01:00
parent 3a5c5dcec4
commit 89ae2d2003
2 changed files with 94 additions and 65 deletions

View File

@ -4062,7 +4062,7 @@
<node concept="10P_77" id="61G6TdDXIQo" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3VwM5b69bNu" role="3clF46">
<property role="TrG5h" value="invalidated" />
<property role="TrG5h" value="invalidatedOnly" />
<node concept="10P_77" id="3VwM5b69eRc" role="1tU5fm" />
</node>
<node concept="37vLTG" id="5EDW3XEu33d" role="3clF46">
@ -4136,7 +4136,7 @@
<ref role="3cqZAo" node="61G6TdDXEdy" resolve="recursively" />
</node>
<node concept="37vLTw" id="3VwM5b6aJ$4" role="37wK5m">
<ref role="3cqZAo" node="3VwM5b69bNu" resolve="invalidated" />
<ref role="3cqZAo" node="3VwM5b69bNu" resolve="invalidatedOnly" />
</node>
</node>
</node>

View File

@ -1100,17 +1100,6 @@
</node>
<node concept="3cqZAl" id="cmlg9OuIxP" role="3clF45" />
<node concept="3clFbS" id="cmlg9OuIxQ" role="3clF47">
<node concept="3clFbF" id="3VwM5b5IeSp" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5IgeC" role="3clFbG">
<node concept="3clFbT" id="3VwM5b5Igio" role="37vLTx" />
<node concept="2OqwBi" id="3VwM5b5If20" role="37vLTJ">
<node concept="Xjq3P" id="3VwM5b5IeSn" role="2Oq$k0" />
<node concept="2OwXpG" id="3VwM5b5IfdQ" role="2OqNvi">
<ref role="2Oxat5" node="3VwM5b5HXAZ" resolve="validated" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="cmlg9Ov5u4" role="3cqZAp">
<node concept="2OqwBi" id="cmlg9Ow9om" role="3clFbG">
<node concept="1rXfSq" id="cmlg9Ov5u6" role="2Oq$k0">
@ -1438,24 +1427,6 @@
</node>
</node>
</node>
<node concept="3clFbF" id="3VwM5b5IbXD" role="3cqZAp">
<node concept="37vLTI" id="3VwM5b5IdE8" role="3clFbG">
<node concept="2OqwBi" id="3VwM5b5IeAR" role="37vLTx">
<node concept="37vLTw" id="3VwM5b5Ieu0" role="2Oq$k0">
<ref role="3cqZAo" node="1XKnVPw3aj" resolve="res" />
</node>
<node concept="liA8E" id="3VwM5b5IeJ5" role="2OqNvi">
<ref role="37wK5l" to="psoy:7Oc59RS_hsj" resolve="isSuccessful" />
</node>
</node>
<node concept="2OqwBi" id="3VwM5b5IcqK" role="37vLTJ">
<node concept="Xjq3P" id="3VwM5b5IbXB" role="2Oq$k0" />
<node concept="2OwXpG" id="3VwM5b5IcEB" role="2OqNvi">
<ref role="2Oxat5" node="3VwM5b5HXAZ" resolve="validated" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="1XKnVPw9aq" role="3cqZAp">
<node concept="37vLTw" id="1XKnVPw9ao" role="3clFbG">
<ref role="3cqZAo" node="1XKnVPw3aj" resolve="res" />
@ -1516,19 +1487,6 @@
</node>
</node>
<node concept="2tJIrI" id="7DvO2M9Uaho" role="jymVt" />
<node concept="3clFb_" id="3VwM5b5Ihsr" role="jymVt">
<property role="TrG5h" value="isValidated" />
<node concept="10P_77" id="3VwM5b5Iuzo" role="3clF45" />
<node concept="3Tm1VV" id="3VwM5b5Ihsu" role="1B3o_S" />
<node concept="3clFbS" id="3VwM5b5Ihsv" role="3clF47">
<node concept="3clFbF" id="3VwM5b5J027" role="3cqZAp">
<node concept="37vLTw" id="3VwM5b5J026" role="3clFbG">
<ref role="3cqZAo" node="3VwM5b5HXAZ" resolve="validated" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="3VwM5b5L31H" role="jymVt" />
<node concept="3clFb_" id="7DvO2M9Uahp" role="jymVt">
<property role="TrG5h" value="updateAuxRules" />
<node concept="37vLTG" id="7DvO2M9Uahq" role="3clF46">
@ -5060,12 +5018,6 @@
</node>
<node concept="10Nm6u" id="2hQbw6HT6iu" role="33vP2m" />
</node>
<node concept="312cEg" id="3VwM5b5HXAZ" role="jymVt">
<property role="TrG5h" value="validated" />
<node concept="3Tm6S6" id="3VwM5b5HXB0" role="1B3o_S" />
<node concept="10P_77" id="3VwM5b5I8WW" role="1tU5fm" />
<node concept="3clFbT" id="3VwM5b5IaTL" role="33vP2m" />
</node>
<node concept="3Tm1VV" id="cmlg9OLXEa" role="1B3o_S" />
</node>
<node concept="312cEu" id="12yN8DyNqdl">
@ -6954,7 +6906,7 @@
<node concept="10P_77" id="61G6TdDKG4G" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3VwM5b6awf7" role="3clF46">
<property role="TrG5h" value="invalidated" />
<property role="TrG5h" value="invalidatedOnly" />
<node concept="10P_77" id="3VwM5b6aAXH" role="1tU5fm" />
</node>
<node concept="3uibUv" id="4QPCta1bMC8" role="3clF45">
@ -7255,6 +7207,41 @@
</node>
</node>
</node>
<node concept="3cpWs8" id="17DrR$SPIhm" role="3cqZAp">
<node concept="3cpWsn" id="17DrR$SPIhn" role="3cpWs9">
<property role="TrG5h" value="skip" />
<node concept="10P_77" id="17DrR$SPkMX" role="1tU5fm" />
<node concept="1Wc70l" id="17DrR$SSuda" role="33vP2m">
<node concept="1Wc70l" id="17DrR$SPIho" role="3uHU7B">
<node concept="37vLTw" id="17DrR$SPIhp" role="3uHU7B">
<ref role="3cqZAo" node="3VwM5b6awf7" resolve="invalidatedOnly" />
</node>
<node concept="2OqwBi" id="17DrR$SPIhq" role="3uHU7w">
<node concept="2OqwBi" id="17DrR$SPIhr" role="2Oq$k0">
<node concept="37vLTw" id="17DrR$SPIhs" role="2Oq$k0">
<ref role="3cqZAo" node="6nFpYlujVzU" resolve="updatesRecorder" />
</node>
<node concept="liA8E" id="17DrR$SPIht" role="2OqNvi">
<ref role="37wK5l" node="3DPJ8QIziiQ" resolve="invalidatedSet" />
</node>
</node>
<node concept="1v1jN8" id="17DrR$SPIhu" role="2OqNvi" />
</node>
</node>
<node concept="2OqwBi" id="17DrR$SSw1C" role="3uHU7w">
<node concept="2OqwBi" id="17DrR$SSw1D" role="2Oq$k0">
<node concept="37vLTw" id="17DrR$SSw1E" role="2Oq$k0">
<ref role="3cqZAo" node="6nFpYlujVzU" resolve="updatesRecorder" />
</node>
<node concept="liA8E" id="17DrR$SSy2I" role="2OqNvi">
<ref role="37wK5l" node="17DrR$SS7Jv" resolve="introducedSet" />
</node>
</node>
<node concept="1v1jN8" id="17DrR$SSw1G" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="3clFbJ" id="3VwM5b5J6_6" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b5J6_8" role="3clFbx">
<node concept="3clFbF" id="4QPCta1bMCp" role="3cqZAp">
@ -7291,20 +7278,8 @@
</node>
</node>
<node concept="3fqX7Q" id="3VwM5b64e8w" role="3clFbw">
<node concept="1eOMI4" id="3VwM5b64e8C" role="3fr31v">
<node concept="1Wc70l" id="3VwM5b64bQ9" role="1eOMHV">
<node concept="37vLTw" id="3VwM5b6aGkQ" role="3uHU7B">
<ref role="3cqZAo" node="3VwM5b6awf7" resolve="invalidated" />
</node>
<node concept="2OqwBi" id="3VwM5b5J81f" role="3uHU7w">
<node concept="37vLTw" id="3VwM5b5J7GA" role="2Oq$k0">
<ref role="3cqZAo" node="6tPOoeT4XhE" resolve="planHandler" />
</node>
<node concept="liA8E" id="3VwM5b5J8gz" role="2OqNvi">
<ref role="37wK5l" node="3VwM5b5Ihsr" resolve="isValidated" />
</node>
</node>
</node>
<node concept="37vLTw" id="17DrR$SPIhv" role="3fr31v">
<ref role="3cqZAo" node="17DrR$SPIhn" resolve="skip" />
</node>
</node>
</node>
@ -13492,6 +13467,24 @@
</node>
</node>
</node>
<node concept="2tJIrI" id="17DrR$SS7JC" role="jymVt" />
<node concept="3clFb_" id="17DrR$SS7Jv" role="jymVt">
<property role="TrG5h" value="introducedSet" />
<node concept="2hMVRd" id="17DrR$SS7Jw" role="3clF45">
<node concept="3Tqbb2" id="17DrR$SS7Jx" role="2hN53Y" />
</node>
<node concept="3Tm1VV" id="17DrR$SS7Jy" role="1B3o_S" />
<node concept="3clFbS" id="17DrR$SS7Jz" role="3clF47">
<node concept="3clFbF" id="17DrR$SS7J$" role="3cqZAp">
<node concept="2OqwBi" id="17DrR$SS7J_" role="3clFbG">
<node concept="26Dbio" id="17DrR$SS7JB" role="2OqNvi" />
<node concept="37vLTw" id="17DrR$SSmDo" role="2Oq$k0">
<ref role="3cqZAo" node="17DrR$SRYI4" resolve="introducedSet" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="3DPJ8QIErAk" role="jymVt" />
<node concept="3clFb_" id="3DPJ8QIErAb" role="jymVt">
<property role="TrG5h" value="sourceSet" />
@ -13529,6 +13522,14 @@
<node concept="2EZike" id="3DPJ8QIvQ8q" role="2OqNvi" />
</node>
</node>
<node concept="3clFbF" id="17DrR$SSqH3" role="3cqZAp">
<node concept="2OqwBi" id="17DrR$SSsCn" role="3clFbG">
<node concept="37vLTw" id="17DrR$SSqH1" role="2Oq$k0">
<ref role="3cqZAo" node="17DrR$SRYI4" resolve="introducedSet" />
</node>
<node concept="2EZike" id="17DrR$SStRM" role="2OqNvi" />
</node>
</node>
<node concept="1DcWWT" id="5Qx6_6533W3" role="3cqZAp">
<node concept="3clFbS" id="5Qx6_6533W6" role="2LFqv$">
<node concept="3clFbJ" id="5Qx6_6534sK" role="3cqZAp">
@ -13701,6 +13702,22 @@
<ref role="3cqZAo" node="5Qx6_6535W5" resolve="input" />
</node>
</node>
<node concept="9aQIb" id="17DrR$SSnol" role="9aQIa">
<node concept="3clFbS" id="17DrR$SSnom" role="9aQI4">
<node concept="3clFbF" id="17DrR$SSnSq" role="3cqZAp">
<node concept="2OqwBi" id="17DrR$SSoAR" role="3clFbG">
<node concept="37vLTw" id="17DrR$SSnSp" role="2Oq$k0">
<ref role="3cqZAo" node="17DrR$SRYI4" resolve="introducedSet" />
</node>
<node concept="TSZUe" id="17DrR$SSpGw" role="2OqNvi">
<node concept="37vLTw" id="17DrR$SSpZ8" role="25WWJ7">
<ref role="3cqZAo" node="5Qx6_6533W7" resolve="changed" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1Wc70l" id="1ZiI2IC5DPm" role="3clFbw">
@ -15322,6 +15339,18 @@
</node>
</node>
</node>
<node concept="312cEg" id="17DrR$SRYI4" role="jymVt">
<property role="TrG5h" value="introducedSet" />
<node concept="3Tm6S6" id="17DrR$SRYI5" role="1B3o_S" />
<node concept="2hMVRd" id="17DrR$SRYI6" role="1tU5fm">
<node concept="3Tqbb2" id="17DrR$SRYI7" role="2hN53Y" />
</node>
<node concept="2ShNRf" id="17DrR$SRYI8" role="33vP2m">
<node concept="2i4dXS" id="17DrR$SRYI9" role="2ShVmc">
<node concept="3Tqbb2" id="17DrR$SRYIa" role="HW$YZ" />
</node>
</node>
</node>
<node concept="312cEg" id="4mdCe2gzxYJ" role="jymVt">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="4mdCe2gzq9P" role="1tU5fm">