Refactoring in TypecheckingService; simplifying code

Request is no longer dependent on `TypecheckingService`.
Only single request can be processed at a time, which helps
prevent recursion.
All facade method in `TypecheckingService` now return instance
of `Response` instead.
This commit is contained in:
Fedor Isakov 2022-07-15 19:46:13 +02:00
parent 0422a4cbd4
commit 0663921ecd
5 changed files with 1768 additions and 1604 deletions

View File

@ -2777,6 +2777,9 @@
<node concept="2ShNRf" id="1z4$59jNhZc" role="33vP2m">
<node concept="1pGfFk" id="1z4$59jNilE" role="2ShVmc">
<ref role="37wK5l" to="tj24:5cBWTAehvV3" resolve="TypecheckingState" />
<node concept="37vLTw" id="1C_jAsqmh0f" role="37wK5m">
<ref role="3cqZAo" node="14$_tTxzTDw" resolve="modelRepo" />
</node>
</node>
</node>
</node>
@ -3917,7 +3920,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSxVG" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -3967,7 +3970,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSzep" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4148,7 +4151,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSzV4" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4198,7 +4201,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iS_5i" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4402,7 +4405,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iS_QO" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4424,7 +4427,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSAZO" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4478,7 +4481,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSOUu" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4510,7 +4513,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSQ8h" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4780,7 +4783,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSE_p" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4826,7 +4829,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSEOj" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4886,7 +4889,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSFr5" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -4930,7 +4933,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSFN9" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>

View File

@ -753,7 +753,7 @@
</node>
</node>
<node concept="liA8E" id="4XsNDZYjT9u" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
<node concept="37vLTw" id="4XsNDZYk4Jb" role="37vLTJ">
@ -2506,7 +2506,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iTRP0" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
<node concept="37vLTw" id="55xYlrlznjf" role="37vLTJ">

View File

@ -1582,6 +1582,9 @@
</node>
<node concept="1rXfSq" id="1RYTbd7BH65" role="37vLTx">
<ref role="37wK5l" node="1RYTbd7BH60" resolve="createState" />
<node concept="37vLTw" id="1C_jAsqmsx2" role="37wK5m">
<ref role="3cqZAo" node="7e$2hwaUBIc" resolve="repository" />
</node>
</node>
</node>
</node>
@ -1690,6 +1693,9 @@
<node concept="37vLTI" id="17DrR$SXU$V" role="3clFbG">
<node concept="1rXfSq" id="1RYTbd7BLkE" role="37vLTx">
<ref role="37wK5l" node="1RYTbd7BH60" resolve="createState" />
<node concept="37vLTw" id="1C_jAsqmI2y" role="37wK5m">
<ref role="3cqZAo" node="7e$2hwaUBIc" resolve="repository" />
</node>
</node>
<node concept="37vLTw" id="17DrR$SXU_0" role="37vLTJ">
<ref role="3cqZAo" node="5cBWTAejqou" resolve="effectiveState" />
@ -2171,6 +2177,12 @@
<node concept="2tJIrI" id="6$gg4k_6BHa" role="jymVt" />
<node concept="3clFb_" id="1RYTbd7BH60" role="jymVt">
<property role="TrG5h" value="createState" />
<node concept="37vLTG" id="1C_jAsql_X0" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="1C_jAsqlOkq" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3Tm6S6" id="1RYTbd7BH61" role="1B3o_S" />
<node concept="3uibUv" id="1RYTbd7BH62" role="3clF45">
<ref role="3uigEE" to="tj24:4Z$O9mrQIzY" resolve="TypecheckingState" />
@ -2185,6 +2197,9 @@
<node concept="2ShNRf" id="1RYTbd7BQR2" role="33vP2m">
<node concept="1pGfFk" id="1RYTbd7BQR3" role="2ShVmc">
<ref role="37wK5l" to="tj24:5cBWTAehvV3" resolve="TypecheckingState" />
<node concept="37vLTw" id="1C_jAsqm46v" role="37wK5m">
<ref role="3cqZAo" node="1C_jAsql_X0" resolve="repository" />
</node>
</node>
</node>
</node>
@ -2397,7 +2412,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iR6C1" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2450,7 +2465,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iRsWk" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2561,7 +2576,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iRh_9" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2627,7 +2642,7 @@
</node>
</node>
<node concept="liA8E" id="51h1DIGrJCI" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2695,7 +2710,7 @@
</node>
</node>
<node concept="liA8E" id="51h1DIGst44" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2742,7 +2757,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iRDco" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2837,7 +2852,7 @@
</node>
</node>
<node concept="liA8E" id="51h1DIGlYEJ" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -2879,7 +2894,7 @@
</node>
</node>
<node concept="liA8E" id="6v6oK28YxAs" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -3328,7 +3343,7 @@
</node>
</node>
<node concept="liA8E" id="51h1DIGjVq9" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
<node concept="37vLTw" id="51h1DIGjVqa" role="37vLTJ">
@ -3367,7 +3382,7 @@
</node>
</node>
<node concept="liA8E" id="51h1DIGjVqp" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
<node concept="37vLTw" id="51h1DIGjVqq" role="37vLTJ">
@ -3521,7 +3536,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iRRQd" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>

View File

@ -561,7 +561,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSch1" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -599,7 +599,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSXWJ" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -715,7 +715,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSfnn" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -753,7 +753,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSYXg" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -859,7 +859,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iSh5E" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>
@ -902,7 +902,7 @@
</node>
</node>
<node concept="liA8E" id="1z4$59iT0BY" role="2OqNvi">
<ref role="37wK5l" to="tj24:1z4$59ivhO1" resolve="get" />
<ref role="37wK5l" to="tj24:1C_jAsqza5P" resolve="get" />
</node>
</node>
</node>