Refactoring in program producing: getting ready to drop incrementality

Optionally produce partial program in incremental mode.
A partial program includes all "static" rules plus the "required closure"
of all changed nodes.
Produce program for required nodes unconditionally.
Mark all rule updates as validated only if exlicitly asked for it.
This commit is contained in:
Fedor Isakov 2021-03-27 14:51:17 +01:00
parent b5ffb8c83c
commit 7c89dfdffd
3 changed files with 64 additions and 29 deletions

View File

@ -10996,13 +10996,10 @@
<node concept="37vLTw" id="3DPJ8QIIN3G" role="37wK5m">
<ref role="3cqZAo" node="6nFpYltSFnC" resolve="nodes" />
</node>
<node concept="1rXfSq" id="3DPJ8QIIN3H" role="37wK5m">
<ref role="37wK5l" node="6nFpYltM1Er" resolve="invalidatedOrNew" />
<node concept="1rXfSq" id="3DPJ8QIIN3I" role="37wK5m">
<ref role="37wK5l" node="6nFpYltVXdg" resolve="singular" />
<node concept="37vLTw" id="3DPJ8QIIN3J" role="37wK5m">
<ref role="3cqZAo" node="6nFpYltSFn$" resolve="action" />
</node>
<node concept="1rXfSq" id="3DPJ8QIIN3I" role="37wK5m">
<ref role="37wK5l" node="6nFpYltVXdg" resolve="singular" />
<node concept="37vLTw" id="3DPJ8QIIN3J" role="37wK5m">
<ref role="3cqZAo" node="6nFpYltSFn$" resolve="action" />
</node>
</node>
</node>
@ -13011,9 +13008,6 @@
<ref role="3uigEE" node="7DvO2M9Uago" resolve="RulesPlanHandler" />
</node>
</node>
<node concept="2hMVRd" id="1XKnVQltnt" role="3clF45">
<node concept="3Tqbb2" id="1XKnVQl$Sh" role="2hN53Y" />
</node>
<node concept="3Tm1VV" id="1XKnVQioNr" role="1B3o_S" />
<node concept="3clFbS" id="1XKnVQioNs" role="3clF47">
<node concept="3SKdUt" id="51ek2rQMIYJ" role="3cqZAp">
@ -13128,34 +13122,20 @@
</node>
</node>
</node>
<node concept="3clFbF" id="4J__M6h__I" role="3cqZAp">
<node concept="2OqwBi" id="4J__M6hAl3" role="3clFbG">
<node concept="37vLTw" id="4J__M6h__G" role="2Oq$k0">
<ref role="3cqZAo" node="1XKnVQiz0H" resolve="planHandler" />
</node>
<node concept="liA8E" id="4J__M6hB9Q" role="2OqNvi">
<ref role="37wK5l" node="4J__M63pdY" resolve="markAllValidated" />
</node>
</node>
</node>
<node concept="3clFbF" id="1XKnVQlB02" role="3cqZAp">
<node concept="37vLTw" id="1XKnVQlB00" role="3clFbG">
<ref role="3cqZAo" node="1XKnVQiLVc" resolve="changedSetClosure" />
</node>
</node>
</node>
<node concept="P$JXv" id="1XKnVQkJXN" role="lGtFl">
<node concept="TZ5HA" id="1XKnVQkJXO" role="TZ5H$">
<node concept="1dT_AC" id="1XKnVQkJXP" role="1dT_Ay">
<property role="1dT_AB" value="Returns the changed set closure." />
<property role="1dT_AB" value="Performs invalidation on the passed RulesPlanHandler using the changed set. " />
</node>
</node>
<node concept="TZ5HA" id="1XKnVQlDZq" role="TZ5H$">
<node concept="1dT_AC" id="1XKnVQlDZr" role="1dT_Ay">
<property role="1dT_AB" value="Must be called in read action." />
<node concept="TZ5HA" id="55xYlrlJHGn" role="TZ5H$">
<node concept="1dT_AC" id="55xYlrlJHGo" role="1dT_Ay">
<property role="1dT_AB" value="Clears internally collected changes. " />
</node>
</node>
</node>
<node concept="3cqZAl" id="55xYlrlJoZI" role="3clF45" />
</node>
<node concept="2tJIrI" id="1XKnVQihdz" role="jymVt" />
<node concept="3clFb_" id="6nFpYlue$oB" role="jymVt">

View File

@ -2228,6 +2228,16 @@
</node>
</node>
</node>
<node concept="3clFbF" id="4J__M6h__I" role="3cqZAp">
<node concept="2OqwBi" id="4J__M6hAl3" role="3clFbG">
<node concept="37vLTw" id="4J__M6h__G" role="2Oq$k0">
<ref role="3cqZAo" node="1XKnVPKBoR" resolve="planHandler" />
</node>
<node concept="liA8E" id="4J__M6hB9Q" role="2OqNvi">
<ref role="37wK5l" to="ksgm:4J__M63pdY" resolve="markAllValidated" />
</node>
</node>
</node>
<node concept="3clFbF" id="1XKnVQxc6T" role="3cqZAp">
<node concept="2OqwBi" id="1XKnVQxdz1" role="3clFbG">
<node concept="37vLTw" id="1XKnVQxc6R" role="2Oq$k0">

View File

@ -14049,11 +14049,28 @@
</node>
</node>
</node>
<node concept="3clFbF" id="55xYlrlMeA3" role="3cqZAp">
<node concept="37vLTI" id="55xYlrlMeA5" role="3clFbG">
<node concept="2OqwBi" id="55xYlrlMf6J" role="37vLTJ">
<node concept="Xjq3P" id="55xYlrlMfo5" role="2Oq$k0" />
<node concept="2OwXpG" id="55xYlrlMf6M" role="2OqNvi">
<ref role="2Oxat5" node="55xYlrlMe_Z" resolve="producePartialProgram" />
</node>
</node>
<node concept="37vLTw" id="55xYlrlMeA9" role="37vLTx">
<ref role="3cqZAo" node="55xYlrlMebT" resolve="producePartialProgram" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="17DrR$SZPQ1" role="3clF46">
<property role="TrG5h" value="initial" />
<node concept="10P_77" id="17DrR$SZQTG" role="1tU5fm" />
</node>
<node concept="37vLTG" id="55xYlrlMebT" role="3clF46">
<property role="TrG5h" value="producePartialProgram" />
<node concept="10P_77" id="55xYlrlMevz" role="1tU5fm" />
</node>
</node>
<node concept="2tJIrI" id="7i3KM7gxGzn" role="jymVt" />
<node concept="3Tm1VV" id="7i3KM7gxDux" role="1B3o_S" />
@ -14122,6 +14139,25 @@
</node>
</node>
</node>
<node concept="3clFbJ" id="55xYlrlMzva" role="3cqZAp">
<node concept="3clFbS" id="55xYlrlMzvc" role="3clFbx">
<node concept="3clFbF" id="55xYlrlL89q" role="3cqZAp">
<node concept="2OqwBi" id="55xYlrlL8AF" role="3clFbG">
<node concept="37vLTw" id="55xYlrlL89o" role="2Oq$k0">
<ref role="3cqZAo" to="1yqb:6nFpYluqFen" resolve="planHandler" />
</node>
<node concept="liA8E" id="55xYlrlL98k" role="2OqNvi">
<ref role="37wK5l" to="ksgm:4J__M63pdY" resolve="markAllValidated" />
</node>
</node>
</node>
</node>
<node concept="3fqX7Q" id="55xYlrlMzRJ" role="3clFbw">
<node concept="37vLTw" id="55xYlrlM$hC" role="3fr31v">
<ref role="3cqZAo" node="55xYlrlMe_Z" resolve="producePartialProgram" />
</node>
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="51ek2rQMJ0l" role="ukAjM">
@ -14269,6 +14305,12 @@
<ref role="3uigEE" to="ksgm:70Wv0dJhQb2" resolve="OriginIndex" />
</node>
</node>
<node concept="312cEg" id="55xYlrlMe_Z" role="jymVt">
<property role="TrG5h" value="producePartialProgram" />
<property role="3TUv4t" value="true" />
<node concept="3Tm6S6" id="55xYlrlMeA0" role="1B3o_S" />
<node concept="10P_77" id="55xYlrlMeA2" role="1tU5fm" />
</node>
<node concept="2tJIrI" id="6nFpYlurR2R" role="jymVt" />
</node>
<node concept="312cEu" id="5EDW3XDYg8Y">
@ -18303,6 +18345,9 @@
</node>
</node>
</node>
<node concept="3clFbT" id="55xYlrlMtWq" role="37wK5m">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
</node>