Introduce explicit dependency on SRepository, stop trying to recover it from node.

TypecheckingService and provider component are explicitly dependent
on SRepository.
The repository instance comes from the first opened project, which
is a dirty hack and is temporary until Typechecking Facade API
is fixed to provide appropriate instance.
This commit is contained in:
Fedor Isakov 2020-07-15 11:56:20 +02:00
parent 29ffc46fa4
commit 2119fbc591
5 changed files with 558 additions and 620 deletions

View File

@ -1552,6 +1552,24 @@
</node>
</node>
</node>
<node concept="3cpWs8" id="61G6TdBScAk" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBScAl" role="3cpWs9">
<property role="TrG5h" value="typecheckingService" />
<node concept="3uibUv" id="61G6TdBScq_" role="1tU5fm">
<ref role="3uigEE" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="61G6TdBScAm" role="33vP2m">
<ref role="37wK5l" to="tj24:1FOQehxzbI0" resolve="forRepository" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="61G6TdBScAn" role="37wK5m">
<node concept="1jxXqW" id="61G6TdBScAo" role="2Oq$k0" />
<node concept="liA8E" id="61G6TdBScAp" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="14$_tTxzzxP" role="3cqZAp" />
<node concept="3cpWs8" id="7mB3viLf$oY" role="3cqZAp">
<node concept="3cpWsn" id="7mB3viLf$oZ" role="3cpWs9">
@ -1586,24 +1604,28 @@
<node concept="3cpWsn" id="6$7vuu2wZdr" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr" />
<node concept="3Tqbb2" id="6$7vuu2wZdp" role="1tU5fm" />
<node concept="2YIFZM" id="4RzhaQIJMX1" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="7mB3viLfF1U" role="37wK5m">
<node concept="1PxgMI" id="7mB3viLfDMv" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="7mB3viLfELQ" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="7mB3viLf_YP" role="1m5AlR">
<node concept="37vLTw" id="7mB3viLf_bH" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLf$oZ" resolve="foo" />
<node concept="2OqwBi" id="61G6TdBSFqE" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSFdZ" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSFIU" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="7mB3viLfF1U" role="37wK5m">
<node concept="1PxgMI" id="7mB3viLfDMv" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="7mB3viLfELQ" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="7mB3viLf_YP" role="1m5AlR">
<node concept="37vLTw" id="7mB3viLf_bH" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLf$oZ" resolve="foo" />
</node>
<node concept="1mfA1w" id="7mB3viLfBqX" role="2OqNvi" />
</node>
<node concept="1mfA1w" id="7mB3viLfBqX" role="2OqNvi" />
</node>
</node>
<node concept="3TrEf2" id="7mB3viLfGdP" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="3TrEf2" id="7mB3viLfGdP" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -1627,24 +1649,28 @@
<node concept="3cpWsn" id="6$7vuu2xGoB" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr2" />
<node concept="3Tqbb2" id="6$7vuu2xGoC" role="1tU5fm" />
<node concept="2YIFZM" id="4RzhaQIJMX2" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="7mB3viLfG$o" role="37wK5m">
<node concept="1PxgMI" id="7mB3viLfG$p" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="7mB3viLfG$q" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="7mB3viLfG$r" role="1m5AlR">
<node concept="37vLTw" id="7mB3viLfG$s" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLf$oZ" resolve="foo" />
<node concept="2OqwBi" id="61G6TdBSKKo" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSKz_" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSL5_" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="7mB3viLfG$o" role="37wK5m">
<node concept="1PxgMI" id="7mB3viLfG$p" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="7mB3viLfG$q" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="7mB3viLfG$r" role="1m5AlR">
<node concept="37vLTw" id="7mB3viLfG$s" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLf$oZ" resolve="foo" />
</node>
<node concept="1mfA1w" id="7mB3viLfG$t" role="2OqNvi" />
</node>
<node concept="1mfA1w" id="7mB3viLfG$t" role="2OqNvi" />
</node>
</node>
<node concept="3TrEf2" id="7mB3viLfG$u" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="3TrEf2" id="7mB3viLfG$u" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -1734,6 +1760,24 @@
</node>
</node>
</node>
<node concept="3cpWs8" id="61G6TdBSLyx" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBSLyy" role="3cpWs9">
<property role="TrG5h" value="typecheckingService" />
<node concept="3uibUv" id="61G6TdBSLyz" role="1tU5fm">
<ref role="3uigEE" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="61G6TdBSLy$" role="33vP2m">
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" to="tj24:1FOQehxzbI0" resolve="forRepository" />
<node concept="2OqwBi" id="61G6TdBSLy_" role="37wK5m">
<node concept="1jxXqW" id="61G6TdBSLyA" role="2Oq$k0" />
<node concept="liA8E" id="61G6TdBSLyB" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="14$_tTxz_CO" role="3cqZAp" />
<node concept="3cpWs8" id="7mB3viLfNvh" role="3cqZAp">
<node concept="3cpWsn" id="7mB3viLfNvi" role="3cpWs9">
@ -1767,24 +1811,28 @@
<node concept="3cpWsn" id="3u5wJtbznv" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr" />
<node concept="3Tqbb2" id="3u5wJtbznr" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XyuH" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="7mB3viLfRod" role="37wK5m">
<node concept="1PxgMI" id="7mB3viLfRoe" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="7mB3viLfRof" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="7mB3viLfRog" role="1m5AlR">
<node concept="37vLTw" id="7mB3viLfRoh" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLfNvi" resolve="foo" />
<node concept="2OqwBi" id="61G6TdBSMsy" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSMhS" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSLyy" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSMPM" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="7mB3viLfRod" role="37wK5m">
<node concept="1PxgMI" id="7mB3viLfRoe" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="7mB3viLfRof" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="7mB3viLfRog" role="1m5AlR">
<node concept="37vLTw" id="7mB3viLfRoh" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLfNvi" resolve="foo" />
</node>
<node concept="1mfA1w" id="7mB3viLfRoi" role="2OqNvi" />
</node>
<node concept="1mfA1w" id="7mB3viLfRoi" role="2OqNvi" />
</node>
</node>
<node concept="3TrEf2" id="7mB3viLfRoj" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="3TrEf2" id="7mB3viLfRoj" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -1808,24 +1856,28 @@
<node concept="3cpWsn" id="3u5wJtbATp" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr2" />
<node concept="3Tqbb2" id="3u5wJtbATq" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XyFC" role="33vP2m">
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<node concept="2OqwBi" id="6ed5tL4XyFD" role="37wK5m">
<node concept="1PxgMI" id="6ed5tL4XyFE" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="6ed5tL4XyFF" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="6ed5tL4XyFG" role="1m5AlR">
<node concept="37vLTw" id="6ed5tL4XyFH" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLfNvi" resolve="foo" />
<node concept="2OqwBi" id="61G6TdBSNpg" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSNph" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSLyy" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSNpi" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="61G6TdBSNpj" role="37wK5m">
<node concept="1PxgMI" id="61G6TdBSNpk" role="2Oq$k0">
<property role="1BlNFB" value="true" />
<node concept="chp4Y" id="61G6TdBSNpl" role="3oSUPX">
<ref role="cht4Q" to="qulx:7mB3viLbaW$" resolve="VarDeclStmt" />
</node>
<node concept="2OqwBi" id="61G6TdBSNpm" role="1m5AlR">
<node concept="37vLTw" id="61G6TdBSNpn" role="2Oq$k0">
<ref role="3cqZAo" node="7mB3viLfNvi" resolve="foo" />
</node>
<node concept="1mfA1w" id="61G6TdBSNpo" role="2OqNvi" />
</node>
<node concept="1mfA1w" id="6ed5tL4XyFI" role="2OqNvi" />
</node>
</node>
<node concept="3TrEf2" id="6ed5tL4XyFJ" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="3TrEf2" id="61G6TdBSNpp" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -1914,6 +1966,24 @@
</node>
</node>
</node>
<node concept="3cpWs8" id="61G6TdBSO$Q" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBSO$R" role="3cpWs9">
<property role="TrG5h" value="typecheckingService" />
<node concept="3uibUv" id="61G6TdBSO$S" role="1tU5fm">
<ref role="3uigEE" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="61G6TdBSO$T" role="33vP2m">
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" to="tj24:1FOQehxzbI0" resolve="forRepository" />
<node concept="2OqwBi" id="61G6TdBSO$U" role="37wK5m">
<node concept="1jxXqW" id="61G6TdBSO$V" role="2Oq$k0" />
<node concept="liA8E" id="61G6TdBSO$W" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="3IIf9OA4zMV" role="3cqZAp" />
<node concept="3cpWs8" id="7mB3viLizhA" role="3cqZAp">
<node concept="3cpWsn" id="7mB3viLizhB" role="3cpWs9">
@ -1968,11 +2038,15 @@
<node concept="3cpWsn" id="3IIf9OA4zN5" role="3cpWs9">
<property role="TrG5h" value="barType" />
<node concept="3Tqbb2" id="3IIf9OA4zN6" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XySS" role="33vP2m">
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<node concept="37vLTw" id="6ed5tL4XzfF" role="37wK5m">
<ref role="3cqZAo" node="7mB3viLizhB" resolve="bar" />
<node concept="2OqwBi" id="61G6TdBSRn1" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSR71" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSO$R" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSRJb" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="37vLTw" id="61G6TdBSS33" role="37wK5m">
<ref role="3cqZAo" node="7mB3viLizhB" resolve="bar" />
</node>
</node>
</node>
</node>
@ -1981,11 +2055,15 @@
<node concept="3cpWsn" id="3IIf9OA4zNj" role="3cpWs9">
<property role="TrG5h" value="quxType" />
<node concept="3Tqbb2" id="3IIf9OA4zNk" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XzpB" role="33vP2m">
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<node concept="37vLTw" id="6ed5tL4XzPB" role="37wK5m">
<ref role="3cqZAo" node="7mB3viLiztG" resolve="qux" />
<node concept="2OqwBi" id="61G6TdBSSiX" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSSiY" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSO$R" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSSiZ" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="37vLTw" id="61G6TdBSSBe" role="37wK5m">
<ref role="3cqZAo" node="7mB3viLiztG" resolve="qux" />
</node>
</node>
</node>
</node>
@ -2022,14 +2100,18 @@
<node concept="3cpWsn" id="3IIf9OA557D" role="3cpWs9">
<property role="TrG5h" value="isSubtype" />
<node concept="10P_77" id="3IIf9OA557w" role="1tU5fm" />
<node concept="2YIFZM" id="4RzhaQIJMX3" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9OA4ZMD" resolve="convertsTo" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="3IIf9OA557F" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zN5" resolve="barType" />
<node concept="2OqwBi" id="61G6TdBSPuB" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSPcC" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSO$R" resolve="typecheckingService" />
</node>
<node concept="37vLTw" id="3IIf9OA557G" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zNj" resolve="quxType" />
<node concept="liA8E" id="61G6TdBSPPR" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9OAgpFT" resolve="getConvertsTo" />
<node concept="37vLTw" id="3IIf9OA557F" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zN5" resolve="barType" />
</node>
<node concept="37vLTw" id="3IIf9OA557G" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zNj" resolve="quxType" />
</node>
</node>
</node>
</node>
@ -2044,14 +2126,18 @@
<node concept="3cpWsn" id="2BZXJed03i_" role="3cpWs9">
<property role="TrG5h" value="isNotSubtype" />
<node concept="10P_77" id="2BZXJed03iA" role="1tU5fm" />
<node concept="2YIFZM" id="4RzhaQIJMX4" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9OA4ZMD" resolve="convertsTo" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="2BZXJed03iD" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zNj" resolve="quxType" />
<node concept="2OqwBi" id="61G6TdBSQkw" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSQkx" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSO$R" resolve="typecheckingService" />
</node>
<node concept="37vLTw" id="2BZXJed03iC" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zN5" resolve="barType" />
<node concept="liA8E" id="61G6TdBSQky" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9OAgpFT" resolve="getConvertsTo" />
<node concept="37vLTw" id="61G6TdBSQk$" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zNj" resolve="quxType" />
</node>
<node concept="37vLTw" id="61G6TdBSQkz" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA4zN5" resolve="barType" />
</node>
</node>
</node>
</node>
@ -2362,20 +2448,42 @@
<ref role="3cqZAo" node="3KwBCAABwVU" resolve="modelRepo" />
</node>
</node>
<node concept="3cpWs8" id="61G6TdBSTGW" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBSTGX" role="3cpWs9">
<property role="TrG5h" value="typecheckingService" />
<node concept="3uibUv" id="61G6TdBSTGY" role="1tU5fm">
<ref role="3uigEE" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="61G6TdBSTGZ" role="33vP2m">
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" to="tj24:1FOQehxzbI0" resolve="forRepository" />
<node concept="2OqwBi" id="61G6TdBSTH0" role="37wK5m">
<node concept="1jxXqW" id="61G6TdBSTH1" role="2Oq$k0" />
<node concept="liA8E" id="61G6TdBSTH2" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="3KwBCAABszG" role="3cqZAp" />
<node concept="3cpWs8" id="3KwBCAAB$Q4" role="3cqZAp">
<node concept="3cpWsn" id="3KwBCAAB$Q5" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr" />
<node concept="3Tqbb2" id="3KwBCAAB$Q6" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4Xxnk" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="6ed5tL4Xxnl" role="37wK5m">
<node concept="3xONca" id="6ed5tL4Xxnm" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="6ed5tL4Xxnn" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="2OqwBi" id="61G6TdBSUtU" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSUle" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSTGX" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSUKu" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="6ed5tL4Xxnl" role="37wK5m">
<node concept="3xONca" id="6ed5tL4Xxnm" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="6ed5tL4Xxnn" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -2404,15 +2512,19 @@
<node concept="3cpWsn" id="3KwBCAAB_a6" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr2" />
<node concept="3Tqbb2" id="3KwBCAAB_a7" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XxfF" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="6ed5tL4Xxiu" role="37wK5m">
<node concept="3xONca" id="6ed5tL4Xxiv" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="6ed5tL4Xxiw" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="2OqwBi" id="61G6TdBSUWe" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSUWf" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSTGX" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSUWg" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="61G6TdBSUWh" role="37wK5m">
<node concept="3xONca" id="61G6TdBSUWi" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="61G6TdBSUWj" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -2455,15 +2567,19 @@
<node concept="3cpWsn" id="3KwBCAACJFB" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr3" />
<node concept="3Tqbb2" id="3KwBCAACJFC" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XxCu" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="6ed5tL4XxCv" role="37wK5m">
<node concept="3xONca" id="6ed5tL4XxCw" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="6ed5tL4XxCx" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="2OqwBi" id="61G6TdBSV55" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSV56" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSTGX" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSV57" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="61G6TdBSV58" role="37wK5m">
<node concept="3xONca" id="61G6TdBSV59" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="61G6TdBSV5a" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>
@ -2490,15 +2606,19 @@
<node concept="3cpWsn" id="3KwBCAACXaE" role="3cpWs9">
<property role="TrG5h" value="typeOfExpr4" />
<node concept="3Tqbb2" id="3KwBCAACXaF" role="1tU5fm" />
<node concept="2YIFZM" id="6ed5tL4XxH_" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="6ed5tL4XxHA" role="37wK5m">
<node concept="3xONca" id="6ed5tL4XxHB" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="6ed5tL4XxHC" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
<node concept="2OqwBi" id="61G6TdBSVef" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSVeg" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBSTGX" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBSVeh" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="2OqwBi" id="61G6TdBSVei" role="37wK5m">
<node concept="3xONca" id="61G6TdBSVej" role="2Oq$k0">
<ref role="3xOPvv" node="7mB3viLoFYN" resolve="bar" />
</node>
<node concept="3TrEf2" id="61G6TdBSVek" role="2OqNvi">
<ref role="3Tt5mk" to="qulx:7mB3viLbaWQ" resolve="init" />
</node>
</node>
</node>
</node>

View File

@ -448,6 +448,17 @@
</node>
</node>
</node>
<node concept="3clFbF" id="61G6TdBKyPA" role="3cqZAp">
<node concept="37vLTI" id="61G6TdBKzHN" role="3clFbG">
<node concept="10Nm6u" id="61G6TdBKzRV" role="37vLTx" />
<node concept="2OqwBi" id="61G6TdBKz8n" role="37vLTJ">
<node concept="Xjq3P" id="61G6TdBKyP$" role="2Oq$k0" />
<node concept="2OwXpG" id="61G6TdBKzoe" role="2OqNvi">
<ref role="2Oxat5" node="51ek2rRX2Ez" resolve="languageRegistry" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="5BwsbZJDRw1" role="jymVt" />
@ -497,7 +508,48 @@
</node>
</node>
</node>
<node concept="3clFbH" id="Q_4x909FNR" role="3cqZAp" />
<node concept="3clFbH" id="61G6TdBLdbt" role="3cqZAp" />
<node concept="3SKdUt" id="61G6TdBL9Xu" role="3cqZAp">
<node concept="1PaTwC" id="61G6TdBL9Xv" role="1aUNEU">
<node concept="3oM_SD" id="61G6TdBL9Xw" role="1PaTwD">
<property role="3oM_SC" value="FIXME" />
</node>
<node concept="3oM_SD" id="61G6TdBLbRO" role="1PaTwD">
<property role="3oM_SC" value="hack" />
</node>
<node concept="3oM_SD" id="61G6TdBLdbh" role="1PaTwD">
<property role="3oM_SC" value="" />
</node>
</node>
</node>
<node concept="3cpWs8" id="61G6TdBKBsv" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBKBsw" role="3cpWs9">
<property role="TrG5h" value="mpsProject" />
<node concept="3uibUv" id="61G6TdBK_YB" role="1tU5fm">
<ref role="3uigEE" to="z1c4:~MPSProject" resolve="MPSProject" />
</node>
<node concept="1rXfSq" id="61G6TdBKBsx" role="33vP2m">
<ref role="37wK5l" node="4MaHsBDes9w" resolve="discoverMPSProject" />
</node>
</node>
</node>
<node concept="3cpWs8" id="61G6TdBKGqC" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBKGqD" role="3cpWs9">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBKGpY" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
<node concept="2OqwBi" id="61G6TdBKGqE" role="33vP2m">
<node concept="37vLTw" id="61G6TdBKGqF" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBKBsw" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBKGqG" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="61G6TdBKNlF" role="3cqZAp" />
<node concept="3cpWs8" id="3KN3A4uZFCY" role="3cqZAp">
<node concept="3cpWsn" id="3KN3A4uZFCZ" role="3cpWs9">
<property role="TrG5h" value="discoverable" />
@ -567,6 +619,9 @@
<node concept="37vLTw" id="51ek2rRwc8R" role="37wK5m">
<ref role="3cqZAo" node="uB9WAZ6Tj1" resolve="srcModel" />
</node>
<node concept="37vLTw" id="61G6TdBL5T7" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBKGqD" resolve="repository" />
</node>
</node>
</node>
</node>
@ -669,6 +724,9 @@
<ref role="37wK5l" to="mhbf:~SNode.getModel()" resolve="getModel" />
</node>
</node>
<node concept="37vLTw" id="61G6TdBL6HV" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBKGqD" resolve="repository" />
</node>
</node>
</node>
</node>
@ -1021,23 +1079,13 @@
<ref role="3uigEE" to="mhbf:~SModel" resolve="SModel" />
</node>
</node>
<node concept="3clFbS" id="2ceN1hCDzsv" role="3clF47">
<node concept="3cpWs8" id="2ceN1hCDzsy" role="3cqZAp">
<node concept="3cpWsn" id="2ceN1hCDzsz" role="3cpWs9">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="2ceN1hCDzs$" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
<node concept="2OqwBi" id="2ceN1hCDzs_" role="33vP2m">
<node concept="37vLTw" id="2ceN1hCDzti" role="2Oq$k0">
<ref role="3cqZAo" node="2ceN1hCDztg" resolve="model" />
</node>
<node concept="liA8E" id="2ceN1hCDzsB" role="2OqNvi">
<ref role="37wK5l" to="mhbf:~SModel.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="37vLTG" id="61G6TdBKQNM" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBKUr3" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3clFbS" id="2ceN1hCDzsv" role="3clF47">
<node concept="3cpWs8" id="2ceN1hCDzsO" role="3cqZAp">
<node concept="3cpWsn" id="2ceN1hCDzsP" role="3cpWs9">
<property role="TrG5h" value="usedLanguages" />
@ -1053,8 +1101,8 @@
<node concept="37vLTw" id="51ek2rRXvSk" role="37wK5m">
<ref role="3cqZAo" node="51ek2rRX2Ez" resolve="languageRegistry" />
</node>
<node concept="37vLTw" id="2ceN1hCD_LC" role="37wK5m">
<ref role="3cqZAo" node="2ceN1hCDzsz" resolve="repository" />
<node concept="37vLTw" id="61G6TdBL0dN" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBKQNM" resolve="repository" />
</node>
</node>
</node>
@ -1616,6 +1664,14 @@
<node concept="37vLTw" id="5Qx6_66a3KY" role="37wK5m">
<ref role="3cqZAo" node="siuT5mmA0c" resolve="node" />
</node>
<node concept="2OqwBi" id="61G6TdBO47D" role="37wK5m">
<node concept="37vLTw" id="61G6TdBO2ZG" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBO57k" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="1vxei$19bRt" role="2OqNvi">
<ref role="37wK5l" to="tj24:1G9Y_Qvby8B" resolve="withTraceObject" />
@ -1689,6 +1745,14 @@
<node concept="37vLTw" id="5Qx6_666bx1" role="37wK5m">
<ref role="3cqZAo" node="siuT5mmA0p" resolve="trgType" />
</node>
<node concept="2OqwBi" id="61G6TdBQr2h" role="37wK5m">
<node concept="37vLTw" id="61G6TdBQpZx" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBQs4P" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="1vxei$19ACY" role="2OqNvi">
<ref role="37wK5l" to="tj24:1G9Y_Qvby8B" resolve="withTraceObject" />
@ -1767,6 +1831,14 @@
<node concept="37vLTw" id="5Qx6_666g6h" role="37wK5m">
<ref role="3cqZAo" node="siuT5mmA0A" resolve="trgConcept" />
</node>
<node concept="2OqwBi" id="61G6TdBRBwr" role="37wK5m">
<node concept="37vLTw" id="61G6TdBRAr5" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBRCsD" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="1vxei$19Rfl" role="2OqNvi">
<ref role="37wK5l" to="tj24:1G9Y_Qvby8B" resolve="withTraceObject" />
@ -1868,6 +1940,14 @@
<node concept="37vLTw" id="2xx8OBylj0o" role="37wK5m">
<ref role="3cqZAo" node="4lCLOtwmUSQ" resolve="trgConcept" />
</node>
<node concept="2OqwBi" id="61G6TdBRJFG" role="37wK5m">
<node concept="37vLTw" id="61G6TdBRGag" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBRN64" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="2xx8OBylj0p" role="2OqNvi">
<ref role="37wK5l" to="tj24:1G9Y_Qvby8B" resolve="withTraceObject" />
@ -2027,6 +2107,14 @@
<node concept="37vLTw" id="5Qx6_666G7x" role="37wK5m">
<ref role="3cqZAo" node="2Hyoxv0bBG" resolve="node" />
</node>
<node concept="2OqwBi" id="61G6TdBPcZv" role="37wK5m">
<node concept="37vLTw" id="61G6TdBPcZw" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBPcZx" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="9dktABR$Lb" role="2OqNvi">
<ref role="37wK5l" to="tj24:1G9Y_Qvby8B" resolve="withTraceObject" />
@ -2165,6 +2253,14 @@
<node concept="37vLTw" id="51ek2rS7bXn" role="37wK5m">
<ref role="3cqZAo" node="6l3eCxofJGR" resolve="node" />
</node>
<node concept="2OqwBi" id="61G6TdBP8CK" role="37wK5m">
<node concept="37vLTw" id="61G6TdBP7Ex" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBP9yK" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="4duYm8_nC08" role="2OqNvi">
<ref role="37wK5l" to="tj24:4duYm8_j5Ga" resolve="clearCache" />
@ -2253,6 +2349,14 @@
<node concept="37vLTw" id="9dktABQBqN" role="37wK5m">
<ref role="3cqZAo" node="6l3eCxofJGZ" resolve="node" />
</node>
<node concept="2OqwBi" id="61G6TdBPhOf" role="37wK5m">
<node concept="37vLTw" id="61G6TdBPgNT" role="2Oq$k0">
<ref role="3cqZAo" node="4MaHsBDeL9t" resolve="mpsProject" />
</node>
<node concept="liA8E" id="61G6TdBPiIZ" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
<node concept="liA8E" id="9dktABQBqO" role="2OqNvi">
<ref role="37wK5l" to="tj24:2Y70AYEd10O" resolve="withMessageHandler" />

View File

@ -5698,11 +5698,8 @@
<node concept="2ShNRf" id="6hpwxwivjhD" role="2Oq$k0">
<node concept="1pGfFk" id="6hpwxwivjhE" role="2ShVmc">
<ref role="37wK5l" node="7kaxm0sEBCn" resolve="TypecheckingService" />
<node concept="1rXfSq" id="6hpwxwiwiKR" role="37wK5m">
<ref role="37wK5l" node="3IIf9O_tL1f" resolve="repository" />
<node concept="37vLTw" id="6hpwxwivjhG" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjhz" resolve="node" />
</node>
<node concept="37vLTw" id="61G6TdBPEW3" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBP$dC" resolve="repository" />
</node>
</node>
</node>
@ -5726,6 +5723,12 @@
<property role="TrG5h" value="node" />
<node concept="3Tqbb2" id="6hpwxwivjh$" role="1tU5fm" />
</node>
<node concept="37vLTG" id="61G6TdBP$dC" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBPBvL" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="6hpwxwivjh_" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
@ -5735,81 +5738,30 @@
<node concept="3clFb_" id="6hpwxwivu0_" role="jymVt">
<property role="TrG5h" value="for2Node" />
<node concept="3clFbS" id="6hpwxwivjiU" role="3clF47">
<node concept="3cpWs8" id="6hpwxwivjiV" role="3cqZAp">
<node concept="3cpWsn" id="6hpwxwivjiW" role="3cpWs9">
<property role="TrG5h" value="tf1" />
<node concept="3uibUv" id="6hpwxwivjiX" role="1tU5fm">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="6hpwxwivjiY" role="33vP2m">
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" node="3IIf9O_Z6Ip" resolve="forNode" />
<node concept="37vLTw" id="6hpwxwivjiZ" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjiO" resolve="node1" />
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="6hpwxwivjj0" role="3cqZAp">
<node concept="3cpWsn" id="6hpwxwivjj1" role="3cpWs9">
<property role="TrG5h" value="tf2" />
<node concept="3uibUv" id="6hpwxwivjj2" role="1tU5fm">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="6hpwxwivjj3" role="33vP2m">
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" node="3IIf9O_Z6Ip" resolve="forNode" />
<node concept="37vLTw" id="6hpwxwivjj4" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjiQ" resolve="node2" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="6hpwxwivjj5" role="3cqZAp" />
<node concept="3clFbJ" id="6hpwxwivjj6" role="3cqZAp">
<node concept="3clFbS" id="6hpwxwivjj7" role="3clFbx">
<node concept="YS8fn" id="6hpwxwivjj8" role="3cqZAp">
<node concept="2ShNRf" id="6hpwxwivjj9" role="YScLw">
<node concept="1pGfFk" id="6hpwxwivjja" role="2ShVmc">
<ref role="37wK5l" to="wyt6:~IllegalArgumentException.&lt;init&gt;(java.lang.String)" resolve="IllegalArgumentException" />
<node concept="Xl_RD" id="6hpwxwivjjb" role="37wK5m">
<property role="Xl_RC" value="repositories differ" />
<node concept="3clFbF" id="61G6TdBQfj1" role="3cqZAp">
<node concept="2OqwBi" id="61G6TdBQfoy" role="3clFbG">
<node concept="2OqwBi" id="61G6TdBQfoz" role="2Oq$k0">
<node concept="2ShNRf" id="61G6TdBQfo$" role="2Oq$k0">
<node concept="1pGfFk" id="61G6TdBQfo_" role="2ShVmc">
<ref role="37wK5l" node="7kaxm0sEBCn" resolve="TypecheckingService" />
<node concept="37vLTw" id="61G6TdBQfoA" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBPFAI" resolve="repository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="6hpwxwivjjc" role="3clFbw">
<node concept="2OqwBi" id="6hpwxwivjjd" role="3uHU7w">
<node concept="37vLTw" id="6hpwxwivjje" role="2Oq$k0">
<ref role="3cqZAo" node="6hpwxwivjj1" resolve="tf2" />
</node>
<node concept="2OwXpG" id="6hpwxwivjjf" role="2OqNvi">
<ref role="2Oxat5" node="3IIf9O_u8qV" resolve="repository" />
<node concept="liA8E" id="61G6TdBQfoB" role="2OqNvi">
<ref role="37wK5l" node="MFuM6Rlhvn" resolve="withConfig" />
<node concept="37vLTw" id="61G6TdBQfoC" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwiuIzK" resolve="config" />
</node>
</node>
</node>
<node concept="2OqwBi" id="6hpwxwivjjg" role="3uHU7B">
<node concept="37vLTw" id="6hpwxwivjjh" role="2Oq$k0">
<ref role="3cqZAo" node="6hpwxwivjiW" resolve="tf1" />
</node>
<node concept="2OwXpG" id="6hpwxwivjji" role="2OqNvi">
<ref role="2Oxat5" node="3IIf9O_u8qV" resolve="repository" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="6hpwxwivjjj" role="3cqZAp" />
<node concept="3clFbF" id="6hpwxwivjjk" role="3cqZAp">
<node concept="2OqwBi" id="2xx8OByf5HF" role="3clFbG">
<node concept="37vLTw" id="6hpwxwivjjl" role="2Oq$k0">
<ref role="3cqZAo" node="6hpwxwivjiW" resolve="tf1" />
</node>
<node concept="liA8E" id="2xx8OByf6j1" role="2OqNvi">
<node concept="liA8E" id="61G6TdBQfoD" role="2OqNvi">
<ref role="37wK5l" node="2xx8OBydcrE" resolve="withArgs" />
<node concept="37vLTw" id="2xx8OByf9AC" role="37wK5m">
<node concept="37vLTw" id="61G6TdBQfoE" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjiO" resolve="node1" />
</node>
<node concept="37vLTw" id="2xx8OByfa2R" role="37wK5m">
<node concept="37vLTw" id="61G6TdBQfoF" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjiQ" resolve="node2" />
</node>
</node>
@ -5824,6 +5776,12 @@
<property role="TrG5h" value="node2" />
<node concept="3Tqbb2" id="6hpwxwivjiR" role="1tU5fm" />
</node>
<node concept="37vLTG" id="61G6TdBPFAI" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBPIVv" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="6hpwxwivjiS" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
@ -5833,81 +5791,30 @@
<node concept="3clFb_" id="6hpwxwivwOV" role="jymVt">
<property role="TrG5h" value="forNodeAndConcept" />
<node concept="3clFbS" id="6hpwxwivjju" role="3clF47">
<node concept="3cpWs8" id="6hpwxwivjjv" role="3cqZAp">
<node concept="3cpWsn" id="6hpwxwivjjw" role="3cpWs9">
<property role="TrG5h" value="tf1" />
<node concept="3uibUv" id="6hpwxwivjjx" role="1tU5fm">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="6hpwxwivjjy" role="33vP2m">
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" node="3IIf9O_Z6Ip" resolve="forNode" />
<node concept="37vLTw" id="6hpwxwivjjz" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjjo" resolve="node" />
</node>
</node>
</node>
</node>
<node concept="3cpWs8" id="6hpwxwivjj$" role="3cqZAp">
<node concept="3cpWsn" id="6hpwxwivjj_" role="3cpWs9">
<property role="TrG5h" value="tf2" />
<node concept="3uibUv" id="6hpwxwivjjA" role="1tU5fm">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="6hpwxwivjjB" role="33vP2m">
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<ref role="37wK5l" node="7Bx7XgEii_q" resolve="forConcept" />
<node concept="37vLTw" id="6hpwxwivjjC" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjjq" resolve="concept" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="6hpwxwivjjD" role="3cqZAp" />
<node concept="3clFbJ" id="6hpwxwivjjE" role="3cqZAp">
<node concept="3clFbS" id="6hpwxwivjjF" role="3clFbx">
<node concept="YS8fn" id="6hpwxwivjjG" role="3cqZAp">
<node concept="2ShNRf" id="6hpwxwivjjH" role="YScLw">
<node concept="1pGfFk" id="6hpwxwivjjI" role="2ShVmc">
<ref role="37wK5l" to="wyt6:~IllegalArgumentException.&lt;init&gt;(java.lang.String)" resolve="IllegalArgumentException" />
<node concept="Xl_RD" id="6hpwxwivjjJ" role="37wK5m">
<property role="Xl_RC" value="repositories differ" />
<node concept="3clFbF" id="61G6TdBQMuv" role="3cqZAp">
<node concept="2OqwBi" id="61G6TdBQMuw" role="3clFbG">
<node concept="2OqwBi" id="61G6TdBQMux" role="2Oq$k0">
<node concept="2ShNRf" id="61G6TdBQMuy" role="2Oq$k0">
<node concept="1pGfFk" id="61G6TdBQMuz" role="2ShVmc">
<ref role="37wK5l" node="7kaxm0sEBCn" resolve="TypecheckingService" />
<node concept="37vLTw" id="61G6TdBQMu$" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBQI9p" resolve="repository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="6hpwxwivjjK" role="3clFbw">
<node concept="2OqwBi" id="6hpwxwivjjL" role="3uHU7w">
<node concept="37vLTw" id="6hpwxwivjjM" role="2Oq$k0">
<ref role="3cqZAo" node="6hpwxwivjj_" resolve="tf2" />
</node>
<node concept="2OwXpG" id="6hpwxwivjjN" role="2OqNvi">
<ref role="2Oxat5" node="3IIf9O_u8qV" resolve="repository" />
<node concept="liA8E" id="61G6TdBQMu_" role="2OqNvi">
<ref role="37wK5l" node="MFuM6Rlhvn" resolve="withConfig" />
<node concept="37vLTw" id="61G6TdBQMuA" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwiuIzK" resolve="config" />
</node>
</node>
</node>
<node concept="2OqwBi" id="6hpwxwivjjO" role="3uHU7B">
<node concept="37vLTw" id="6hpwxwivjjP" role="2Oq$k0">
<ref role="3cqZAo" node="6hpwxwivjjw" resolve="tf1" />
</node>
<node concept="2OwXpG" id="6hpwxwivjjQ" role="2OqNvi">
<ref role="2Oxat5" node="3IIf9O_u8qV" resolve="repository" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="6hpwxwivjjR" role="3cqZAp" />
<node concept="3clFbF" id="6hpwxwivjjS" role="3cqZAp">
<node concept="2OqwBi" id="2xx8OByfbX1" role="3clFbG">
<node concept="37vLTw" id="6hpwxwivjjT" role="2Oq$k0">
<ref role="3cqZAo" node="6hpwxwivjjw" resolve="tf1" />
</node>
<node concept="liA8E" id="2xx8OByfcFH" role="2OqNvi">
<node concept="liA8E" id="61G6TdBQMuB" role="2OqNvi">
<ref role="37wK5l" node="2xx8OBydcrE" resolve="withArgs" />
<node concept="37vLTw" id="2xx8OByfg0H" role="37wK5m">
<node concept="37vLTw" id="61G6TdBQPAz" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjjo" resolve="node" />
</node>
<node concept="37vLTw" id="2xx8OByfh2R" role="37wK5m">
<node concept="37vLTw" id="61G6TdBQPA$" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjjq" resolve="concept" />
</node>
</node>
@ -5922,47 +5829,18 @@
<property role="TrG5h" value="concept" />
<node concept="3bZ5Sz" id="6hpwxwivjjr" role="1tU5fm" />
</node>
<node concept="37vLTG" id="61G6TdBQI9p" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBQJbj" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="6hpwxwivjjs" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="3Tm1VV" id="6hpwxwivjjt" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="6hpwxwivjjU" role="jymVt" />
<node concept="3clFb_" id="6hpwxwivzi_" role="jymVt">
<property role="TrG5h" value="forConcept" />
<node concept="3clFbS" id="6hpwxwivjjZ" role="3clF47">
<node concept="3clFbF" id="6hpwxwivjk0" role="3cqZAp">
<node concept="2OqwBi" id="6hpwxwivjk1" role="3clFbG">
<node concept="2ShNRf" id="6hpwxwivjk2" role="2Oq$k0">
<node concept="1pGfFk" id="6hpwxwivjk3" role="2ShVmc">
<ref role="37wK5l" node="7kaxm0sEBCn" resolve="TypecheckingService" />
<node concept="1rXfSq" id="6hpwxwiwpnz" role="37wK5m">
<ref role="37wK5l" node="7Bx7XgEi3J2" resolve="repository" />
<node concept="37vLTw" id="6hpwxwivjk5" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwivjjW" resolve="concept" />
</node>
</node>
</node>
</node>
<node concept="liA8E" id="6hpwxwivjk6" role="2OqNvi">
<ref role="37wK5l" node="MFuM6Rlhvn" resolve="withConfig" />
<node concept="37vLTw" id="6hpwxwixras" role="37wK5m">
<ref role="3cqZAo" node="6hpwxwiuIzK" resolve="config" />
</node>
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="6hpwxwivjjW" role="3clF46">
<property role="TrG5h" value="concept" />
<node concept="3bZ5Sz" id="6hpwxwivjjX" role="1tU5fm" />
</node>
<node concept="3uibUv" id="6hpwxwivjjY" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="3Tm6S6" id="2xx8OByfkok" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="6hpwxwivjli" role="jymVt" />
<node concept="3clFb_" id="6hpwxwiv_Ya" role="jymVt">
<property role="TrG5h" value="forRepository" />
<node concept="3clFbS" id="6hpwxwivjln" role="3clF47">
@ -5996,115 +5874,7 @@
</node>
<node concept="3Tm6S6" id="2xx8OByfotg" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="6hpwxwiviPO" role="jymVt" />
<node concept="3Tm6S6" id="6hpwxwiuR3o" role="1B3o_S" />
<node concept="2YIFZL" id="3IIf9O_tL1f" role="jymVt">
<property role="TrG5h" value="repository" />
<property role="DiZV1" value="false" />
<property role="od$2w" value="false" />
<node concept="3clFbS" id="3IIf9O_tJHw" role="3clF47">
<node concept="3cpWs8" id="3IIf9O_tJHx" role="3cqZAp">
<node concept="3cpWsn" id="3IIf9O_tJHy" role="3cpWs9">
<property role="TrG5h" value="unit" />
<node concept="H_c77" id="3IIf9O_tJHz" role="1tU5fm" />
<node concept="2OqwBi" id="3IIf9O_tJH$" role="33vP2m">
<node concept="37vLTw" id="3IIf9O_tJH_" role="2Oq$k0">
<ref role="3cqZAo" node="3IIf9O_tJHs" resolve="node" />
</node>
<node concept="I4A8Y" id="3IIf9O_tJHA" role="2OqNvi" />
</node>
</node>
</node>
<node concept="3clFbJ" id="3IIf9O_tJHD" role="3cqZAp">
<node concept="3clFbS" id="3IIf9O_tJHE" role="3clFbx">
<node concept="3SKdUt" id="3IIf9O_tRYY" role="3cqZAp">
<node concept="1PaTwC" id="589APehYyjh" role="1aUNEU">
<node concept="3oM_SD" id="589APehYyji" role="1PaTwD">
<property role="3oM_SC" value="FIXME" />
</node>
<node concept="3oM_SD" id="589APehYyjj" role="1PaTwD">
<property role="3oM_SC" value="the" />
</node>
<node concept="3oM_SD" id="589APehYyjk" role="1PaTwD">
<property role="3oM_SC" value="default" />
</node>
<node concept="3oM_SD" id="589APehYyjl" role="1PaTwD">
<property role="3oM_SC" value="repository" />
</node>
</node>
</node>
<node concept="3cpWs6" id="3IIf9O_tJHF" role="3cqZAp">
<node concept="2YIFZM" id="3IIf9O_tQ$z" role="3cqZAk">
<ref role="1Pybhc" to="w1kc:~MPSModuleRepository" resolve="MPSModuleRepository" />
<ref role="37wK5l" to="w1kc:~MPSModuleRepository.getInstance()" resolve="getInstance" />
</node>
</node>
<node concept="3clFbH" id="3IIf9O_tRfg" role="3cqZAp" />
</node>
<node concept="3clFbC" id="3IIf9O_tJHH" role="3clFbw">
<node concept="10Nm6u" id="3IIf9O_tJHI" role="3uHU7w" />
<node concept="37vLTw" id="3IIf9O_tJHJ" role="3uHU7B">
<ref role="3cqZAo" node="3IIf9O_tJHy" resolve="unit" />
</node>
</node>
</node>
<node concept="3clFbF" id="3IIf9O_tJHK" role="3cqZAp">
<node concept="2OqwBi" id="3IIf9O_tJHL" role="3clFbG">
<node concept="2JrnkZ" id="3IIf9O_tJHM" role="2Oq$k0">
<node concept="37vLTw" id="3IIf9O_tJHN" role="2JrQYb">
<ref role="3cqZAo" node="3IIf9O_tJHy" resolve="unit" />
</node>
</node>
<node concept="liA8E" id="3IIf9O_tJHO" role="2OqNvi">
<ref role="37wK5l" to="mhbf:~SModel.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="3IIf9O_tJHs" role="3clF46">
<property role="TrG5h" value="node" />
<node concept="3Tqbb2" id="3IIf9O_tJHt" role="1tU5fm" />
</node>
<node concept="3uibUv" id="3IIf9O_tJHu" role="3clF45">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
<node concept="3Tm6S6" id="3IIf9O_tJHv" role="1B3o_S" />
</node>
<node concept="2YIFZL" id="7Bx7XgEi3J2" role="jymVt">
<property role="TrG5h" value="repository" />
<property role="DiZV1" value="false" />
<property role="od$2w" value="false" />
<node concept="3clFbS" id="7Bx7XgEi3J3" role="3clF47">
<node concept="3clFbF" id="7Bx7XgEi7TK" role="3cqZAp">
<node concept="2OqwBi" id="7Bx7XgEi9$a" role="3clFbG">
<node concept="2OqwBi" id="7Bx7XgEi8VN" role="2Oq$k0">
<node concept="2OqwBi" id="7Bx7XgEi89$" role="2Oq$k0">
<node concept="37vLTw" id="7Bx7XgEi7TI" role="2Oq$k0">
<ref role="3cqZAo" node="7Bx7XgEi3Jt" resolve="concept" />
</node>
<node concept="liA8E" id="7Bx7XgEi8Pr" role="2OqNvi">
<ref role="37wK5l" to="c17a:~SAbstractConcept.getLanguage()" resolve="getLanguage" />
</node>
</node>
<node concept="liA8E" id="7Bx7XgEi9ts" role="2OqNvi">
<ref role="37wK5l" to="c17a:~SLanguage.getSourceModule()" resolve="getSourceModule" />
</node>
</node>
<node concept="liA8E" id="7Bx7XgEia9v" role="2OqNvi">
<ref role="37wK5l" to="lui2:~SModule.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="7Bx7XgEi3Jt" role="3clF46">
<property role="TrG5h" value="concept" />
<node concept="3bZ5Sz" id="7Bx7XgEi6oT" role="1tU5fm" />
</node>
<node concept="3uibUv" id="7Bx7XgEi3Jv" role="3clF45">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
<node concept="3Tm6S6" id="7Bx7XgEi3Jw" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="6hpwxwit$1b" role="jymVt" />
<node concept="312cEg" id="6hpwxwiuIzK" role="jymVt">
<property role="TrG5h" value="config" />
@ -6316,136 +6086,6 @@
</node>
</node>
</node>
<node concept="2tJIrI" id="6hpwxwitiv4" role="jymVt" />
<node concept="2YIFZL" id="3IIf9O_u0Ck" role="jymVt">
<property role="TrG5h" value="typeOf" />
<property role="DiZV1" value="false" />
<property role="od$2w" value="false" />
<node concept="3clFbS" id="7kaxm0sEBHw" role="3clF47">
<node concept="3clFbF" id="3IIf9O_u1a4" role="3cqZAp">
<node concept="2OqwBi" id="3IIf9O_u1Ig" role="3clFbG">
<node concept="2YIFZM" id="3IIf9O_Z9Gn" role="2Oq$k0">
<ref role="37wK5l" node="3IIf9O_Z6Ip" resolve="forNode" />
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="3IIf9O_Z9Go" role="37wK5m">
<ref role="3cqZAo" node="7kaxm0sEBL9" resolve="node" />
</node>
</node>
<node concept="liA8E" id="3IIf9O_u1WZ" role="2OqNvi">
<ref role="37wK5l" node="3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="37vLTw" id="3IIf9O_u2vc" role="37wK5m">
<ref role="3cqZAo" node="7kaxm0sEBL9" resolve="node" />
</node>
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="7kaxm0sEBL9" role="3clF46">
<property role="TrG5h" value="node" />
<node concept="3Tqbb2" id="7kaxm0sEBLY" role="1tU5fm" />
</node>
<node concept="3Tqbb2" id="7kaxm0sEBIE" role="3clF45" />
<node concept="P$JXv" id="7kaxm0sEBMI" role="lGtFl">
<node concept="TZ5HA" id="7kaxm0sEBMJ" role="TZ5H$">
<node concept="1dT_AC" id="7kaxm0sEBMK" role="1dT_Ay">
<property role="1dT_AB" value="Must be called in a read action." />
</node>
</node>
</node>
<node concept="3Tm1VV" id="7kaxm0sEBHv" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="3IIf9O_tka_" role="jymVt" />
<node concept="2YIFZL" id="3IIf9OA4ZMD" role="jymVt">
<property role="TrG5h" value="convertsTo" />
<node concept="37vLTG" id="3IIf9OA507H" role="3clF46">
<property role="TrG5h" value="from" />
<node concept="3Tqbb2" id="3IIf9OA50cS" role="1tU5fm" />
</node>
<node concept="37vLTG" id="3IIf9OA50dD" role="3clF46">
<property role="TrG5h" value="to" />
<node concept="3Tqbb2" id="3IIf9OA50gM" role="1tU5fm" />
</node>
<node concept="10P_77" id="3IIf9OA4ZSv" role="3clF45" />
<node concept="3Tm1VV" id="3IIf9OA4ZMG" role="1B3o_S" />
<node concept="3clFbS" id="3IIf9OA4ZMH" role="3clF47">
<node concept="3clFbF" id="2BZXJecYDs_" role="3cqZAp">
<node concept="2OqwBi" id="2BZXJecYDsA" role="3clFbG">
<node concept="liA8E" id="2BZXJecYDsD" role="2OqNvi">
<ref role="37wK5l" node="3IIf9OAgpFT" resolve="getConvertsTo" />
<node concept="37vLTw" id="2BZXJecYHdM" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA507H" resolve="from" />
</node>
<node concept="37vLTw" id="2BZXJecYH$3" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA50dD" resolve="to" />
</node>
</node>
<node concept="2YIFZM" id="2qsG4AwJq5l" role="2Oq$k0">
<ref role="37wK5l" node="2qsG4AwIYLn" resolve="for2Node" />
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="2qsG4AwJrGp" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA507H" resolve="from" />
</node>
<node concept="37vLTw" id="2qsG4AwJrQF" role="37wK5m">
<ref role="3cqZAo" node="3IIf9OA50dD" resolve="to" />
</node>
</node>
</node>
</node>
</node>
<node concept="P$JXv" id="3IIf9OA51l$" role="lGtFl">
<node concept="TZ5HA" id="3IIf9OA51l_" role="TZ5H$">
<node concept="1dT_AC" id="3IIf9OA51lA" role="1dT_Ay">
<property role="1dT_AB" value="Must be called in a read action." />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="3IIf9OA4Zhw" role="jymVt" />
<node concept="2YIFZL" id="7Bx7XgEibEE" role="jymVt">
<property role="TrG5h" value="coerceTo" />
<node concept="37vLTG" id="7Bx7XgEibEF" role="3clF46">
<property role="TrG5h" value="source" />
<node concept="3Tqbb2" id="7Bx7XgEibEG" role="1tU5fm" />
</node>
<node concept="37vLTG" id="7Bx7XgEibEH" role="3clF46">
<property role="TrG5h" value="target" />
<node concept="3bZ5Sz" id="7Bx7XgEigMu" role="1tU5fm" />
</node>
<node concept="3Tqbb2" id="4pwDyRAVDGz" role="3clF45" />
<node concept="3Tm1VV" id="7Bx7XgEibEK" role="1B3o_S" />
<node concept="3clFbS" id="7Bx7XgEibEL" role="3clF47">
<node concept="3clFbF" id="7Bx7XgEibFs" role="3cqZAp">
<node concept="2OqwBi" id="7Bx7XgEibFt" role="3clFbG">
<node concept="liA8E" id="7Bx7XgEibFv" role="2OqNvi">
<ref role="37wK5l" node="7Bx7XgEiqaI" resolve="getCoerceTo" />
<node concept="37vLTw" id="7Bx7XgEibFw" role="37wK5m">
<ref role="3cqZAo" node="7Bx7XgEibEF" resolve="source" />
</node>
<node concept="37vLTw" id="7Bx7XgEibFx" role="37wK5m">
<ref role="3cqZAo" node="7Bx7XgEibEH" resolve="target" />
</node>
</node>
<node concept="2YIFZM" id="2qsG4AwKxKq" role="2Oq$k0">
<ref role="37wK5l" node="2qsG4AwKdr0" resolve="forNodeAndConcept" />
<ref role="1Pybhc" node="7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="2qsG4AwKxKr" role="37wK5m">
<ref role="3cqZAo" node="7Bx7XgEibEF" resolve="source" />
</node>
<node concept="37vLTw" id="2qsG4AwKxKs" role="37wK5m">
<ref role="3cqZAo" node="7Bx7XgEibEH" resolve="target" />
</node>
</node>
</node>
</node>
</node>
<node concept="P$JXv" id="7Bx7XgEibFy" role="lGtFl">
<node concept="TZ5HA" id="7Bx7XgEibFz" role="TZ5H$">
<node concept="1dT_AC" id="7Bx7XgEibF$" role="1dT_Ay">
<property role="1dT_AB" value="Must be called in a read action." />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="1oUwjADo8dn" role="jymVt" />
<node concept="2YIFZL" id="3IIf9O_Z6Ip" role="jymVt">
<property role="TrG5h" value="forNode" />
@ -6453,6 +6093,12 @@
<property role="TrG5h" value="node" />
<node concept="3Tqbb2" id="3IIf9O_Z7fM" role="1tU5fm" />
</node>
<node concept="37vLTG" id="61G6TdBOJf3" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBOMpu" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="3IIf9O_Z77V" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
@ -6467,6 +6113,9 @@
<node concept="37vLTw" id="6hpwxwiweSK" role="37wK5m">
<ref role="3cqZAo" node="3IIf9O_Z79b" resolve="node" />
</node>
<node concept="37vLTw" id="61G6TdBPFlt" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBOJf3" resolve="repository" />
</node>
</node>
</node>
</node>
@ -6484,6 +6133,12 @@
<property role="TrG5h" value="node2" />
<node concept="3Tqbb2" id="2qsG4AwJeCW" role="1tU5fm" />
</node>
<node concept="37vLTG" id="61G6TdBPrtr" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBPuu1" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="2qsG4AwIYLq" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
@ -6502,6 +6157,9 @@
<node concept="37vLTw" id="6hpwxwiw7cn" role="37wK5m">
<ref role="3cqZAo" node="2qsG4AwJcNJ" resolve="node2" />
</node>
<node concept="37vLTw" id="61G6TdBQkht" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBPrtr" resolve="repository" />
</node>
</node>
</node>
</node>
@ -6518,6 +6176,12 @@
<property role="TrG5h" value="concept" />
<node concept="3bZ5Sz" id="2qsG4AwKrVe" role="1tU5fm" />
</node>
<node concept="37vLTG" id="61G6TdBQyTZ" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBQ_Bf" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="2qsG4AwKdr5" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
@ -6536,39 +6200,15 @@
<node concept="37vLTw" id="6hpwxwivXWd" role="37wK5m">
<ref role="3cqZAo" node="2qsG4AwKdr3" resolve="concept" />
</node>
<node concept="37vLTw" id="61G6TdBQFyM" role="37wK5m">
<ref role="3cqZAo" node="61G6TdBQyTZ" resolve="repository" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2qsG4AwKdqZ" role="jymVt" />
<node concept="2YIFZL" id="7Bx7XgEii_q" role="jymVt">
<property role="TrG5h" value="forConcept" />
<node concept="37vLTG" id="7Bx7XgEii_r" role="3clF46">
<property role="TrG5h" value="concept" />
<node concept="3bZ5Sz" id="7Bx7XgEilT1" role="1tU5fm" />
</node>
<node concept="3uibUv" id="7Bx7XgEii_t" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="3clFbS" id="7Bx7XgEii_v" role="3clF47">
<node concept="3clFbF" id="6hpwxwivp5C" role="3cqZAp">
<node concept="2OqwBi" id="6hpwxwivpjb" role="3clFbG">
<node concept="1rXfSq" id="6hpwxwixkLO" role="2Oq$k0">
<ref role="37wK5l" node="6hpwxwiwZuc" resolve="factory" />
</node>
<node concept="liA8E" id="6hpwxwivCqK" role="2OqNvi">
<ref role="37wK5l" node="6hpwxwivzi_" resolve="forConcept" />
<node concept="37vLTw" id="6hpwxwivCKy" role="37wK5m">
<ref role="3cqZAo" node="7Bx7XgEii_r" resolve="concept" />
</node>
</node>
</node>
</node>
</node>
<node concept="3Tm1VV" id="2qsG4AwG9nW" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="7Bx7XgEii_p" role="jymVt" />
<node concept="2YIFZL" id="1FOQehxzbI0" role="jymVt">
<property role="TrG5h" value="forRepository" />
<node concept="37vLTG" id="1FOQehxzduN" role="3clF46">
@ -6763,6 +6403,38 @@
</node>
</node>
<node concept="2tJIrI" id="MFuM6RlbY$" role="jymVt" />
<node concept="3clFb_" id="61G6TdBMIKA" role="jymVt">
<property role="TrG5h" value="withRepository" />
<node concept="37vLTG" id="61G6TdBNtQU" role="3clF46">
<property role="TrG5h" value="repository" />
<node concept="3uibUv" id="61G6TdBNz1o" role="1tU5fm">
<ref role="3uigEE" to="lui2:~SRepository" resolve="SRepository" />
</node>
</node>
<node concept="3uibUv" id="61G6TdBMVlw" role="3clF45">
<ref role="3uigEE" node="7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="3Tm1VV" id="61G6TdBMIKD" role="1B3o_S" />
<node concept="3clFbS" id="61G6TdBMIKE" role="3clF47">
<node concept="3clFbF" id="61G6TdBNFpL" role="3cqZAp">
<node concept="37vLTI" id="61G6TdBNMQy" role="3clFbG">
<node concept="37vLTw" id="61G6TdBNTw8" role="37vLTx">
<ref role="3cqZAo" node="61G6TdBNtQU" resolve="repository" />
</node>
<node concept="2OqwBi" id="61G6TdBNFzq" role="37vLTJ">
<node concept="Xjq3P" id="61G6TdBNFpK" role="2Oq$k0" />
<node concept="2OwXpG" id="61G6TdBNJIM" role="2OqNvi">
<ref role="2Oxat5" node="3IIf9O_u8qV" resolve="repository" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="61G6TdBNWft" role="3cqZAp">
<node concept="Xjq3P" id="61G6TdBNWfr" role="3clFbG" />
</node>
</node>
</node>
<node concept="2tJIrI" id="61G6TdBMxt8" role="jymVt" />
<node concept="3clFb_" id="19OC90lY7P" role="jymVt">
<property role="TrG5h" value="cachedTypes" />
<node concept="37vLTG" id="19OC90lY7Q" role="3clF46">

View File

@ -26,6 +26,7 @@
<dependency reexport="false">c9670c16-a215-41fb-8784-04b14329799d(jetbrains.mps.coderules.typechecking.test)</dependency>
<dependency reexport="false">7a5dda62-9140-4668-ab76-d5ed1746f2b2(jetbrains.mps.lang.typesystem)</dependency>
<dependency reexport="false">ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)</dependency>
<dependency reexport="false">6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="11" />

View File

@ -34,7 +34,7 @@
<import index="tpek" ref="r:00000000-0000-4000-0000-011c895902c0(jetbrains.mps.baseLanguage.behavior)" />
<import index="bs09" ref="r:28026be8-9bf8-4f54-9319-0ca8a6d1299d(typechecking.samples.baseLanguage.helloWorld)" />
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" />
<import index="z1c3" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.project(MPS.Core/)" implicit="true" />
<import index="z1c3" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.project(MPS.Core/)" />
<import index="c17a" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.language(MPS.OpenAPI/)" implicit="true" />
</imports>
<registry>
@ -449,7 +449,24 @@
</node>
</node>
</node>
<node concept="3clFbH" id="4pwDyRC1qVH" role="3cqZAp" />
<node concept="3cpWs8" id="61G6TdBScAk" role="3cqZAp">
<node concept="3cpWsn" id="61G6TdBScAl" role="3cpWs9">
<property role="TrG5h" value="typecheckingService" />
<node concept="3uibUv" id="61G6TdBScq_" role="1tU5fm">
<ref role="3uigEE" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
</node>
<node concept="2YIFZM" id="61G6TdBScAm" role="33vP2m">
<ref role="37wK5l" to="tj24:1FOQehxzbI0" resolve="forRepository" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="2OqwBi" id="61G6TdBScAn" role="37wK5m">
<node concept="1jxXqW" id="61G6TdBScAo" role="2Oq$k0" />
<node concept="liA8E" id="61G6TdBScAp" role="2OqNvi">
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
</node>
</node>
</node>
</node>
</node>
<node concept="3J1_TO" id="4pwDyRC1qVT" role="3cqZAp">
<node concept="3clFbS" id="4pwDyRC1qVU" role="1zxBo7">
<node concept="9aQIb" id="4pwDyRC4NSn" role="3cqZAp">
@ -525,11 +542,15 @@
<node concept="3cpWsn" id="4pwDyRC1qW9" role="3cpWs9">
<property role="TrG5h" value="typeofa" />
<node concept="3Tqbb2" id="4pwDyRC1qWa" role="1tU5fm" />
<node concept="2YIFZM" id="4pwDyRC1qWb" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="4pwDyRC1qWc" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1qVX" resolve="a" />
<node concept="2OqwBi" id="61G6TdBShep" role="33vP2m">
<node concept="37vLTw" id="61G6TdBSgUG" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBShBM" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="37vLTw" id="61G6TdBShBP" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1qVX" resolve="a" />
</node>
</node>
</node>
</node>
@ -550,14 +571,18 @@
<node concept="3cpWsn" id="4pwDyRC1KSH" role="3cpWs9">
<property role="TrG5h" value="coercea" />
<node concept="3Tqbb2" id="4pwDyRC1KCj" role="1tU5fm" />
<node concept="2YIFZM" id="4pwDyRC1KSI" role="33vP2m">
<ref role="37wK5l" to="tj24:7Bx7XgEibEE" resolve="coerceTo" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="4pwDyRC1KSJ" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1qW9" resolve="typeofa" />
<node concept="2OqwBi" id="61G6TdBToLU" role="33vP2m">
<node concept="37vLTw" id="61G6TdBTotf" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="35c_gC" id="4pwDyRC1KSK" role="37wK5m">
<ref role="35c_gD" to="tpee:g7uibYu" resolve="ClassifierType" />
<node concept="liA8E" id="61G6TdBTpbU" role="2OqNvi">
<ref role="37wK5l" to="tj24:7Bx7XgEiqaI" resolve="getCoerceTo" />
<node concept="37vLTw" id="4pwDyRC1KSJ" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1qW9" resolve="typeofa" />
</node>
<node concept="35c_gC" id="4pwDyRC1KSK" role="37wK5m">
<ref role="35c_gD" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
</node>
</node>
</node>
@ -660,11 +685,15 @@
<node concept="3cpWsn" id="4pwDyRC4$uj" role="3cpWs9">
<property role="TrG5h" value="typeofs" />
<node concept="3Tqbb2" id="4pwDyRC4$uk" role="1tU5fm" />
<node concept="2YIFZM" id="4pwDyRC4$ul" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="4pwDyRC4_R9" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC4$uo" resolve="s" />
<node concept="2OqwBi" id="61G6TdBS$JY" role="33vP2m">
<node concept="37vLTw" id="61G6TdBS$JZ" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBS$K0" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="37vLTw" id="61G6TdBS_i5" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC4$uo" resolve="s" />
</node>
</node>
</node>
</node>
@ -685,14 +714,18 @@
<node concept="3cpWsn" id="4pwDyRC4$u7" role="3cpWs9">
<property role="TrG5h" value="coerces" />
<node concept="3Tqbb2" id="4pwDyRC4$u8" role="1tU5fm" />
<node concept="2YIFZM" id="4pwDyRC4$u9" role="33vP2m">
<ref role="37wK5l" to="tj24:7Bx7XgEibEE" resolve="coerceTo" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="4pwDyRC4MUC" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC4$uj" resolve="typeofs" />
<node concept="2OqwBi" id="61G6TdBTqwP" role="33vP2m">
<node concept="37vLTw" id="61G6TdBTqeM" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="35c_gC" id="4pwDyRC4$ub" role="37wK5m">
<ref role="35c_gD" to="tpee:g7uibYu" resolve="ClassifierType" />
<node concept="liA8E" id="61G6TdBTqS9" role="2OqNvi">
<ref role="37wK5l" to="tj24:7Bx7XgEiqaI" resolve="getCoerceTo" />
<node concept="37vLTw" id="4pwDyRC4MUC" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC4$uj" resolve="typeofs" />
</node>
<node concept="35c_gC" id="4pwDyRC4$ub" role="37wK5m">
<ref role="35c_gD" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
</node>
</node>
</node>
@ -785,11 +818,15 @@
<node concept="3cpWsn" id="4pwDyRC1RnR" role="3cpWs9">
<property role="TrG5h" value="typeofm" />
<node concept="3Tqbb2" id="4pwDyRC1RnS" role="1tU5fm" />
<node concept="2YIFZM" id="4pwDyRC1RnT" role="33vP2m">
<ref role="37wK5l" to="tj24:3IIf9O_u0Ck" resolve="typeOf" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="4pwDyRC1SRa" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1RnW" resolve="m" />
<node concept="2OqwBi" id="61G6TdBS_$8" role="33vP2m">
<node concept="37vLTw" id="61G6TdBS_$9" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="liA8E" id="61G6TdBS_$a" role="2OqNvi">
<ref role="37wK5l" to="tj24:3IIf9O_tkwF" resolve="getTypeOf" />
<node concept="37vLTw" id="61G6TdBSA6n" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1RnW" resolve="m" />
</node>
</node>
</node>
</node>
@ -815,14 +852,18 @@
<node concept="3cpWsn" id="4pwDyRC1RnG" role="3cpWs9">
<property role="TrG5h" value="coercem" />
<node concept="3Tqbb2" id="4pwDyRC1RnH" role="1tU5fm" />
<node concept="2YIFZM" id="4pwDyRC1RnI" role="33vP2m">
<ref role="37wK5l" to="tj24:7Bx7XgEibEE" resolve="coerceTo" />
<ref role="1Pybhc" to="tj24:7kaxm0sEy3e" resolve="TypecheckingService" />
<node concept="37vLTw" id="4pwDyRC1ZNe" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1RnR" resolve="typeofm" />
<node concept="2OqwBi" id="61G6TdBTs6_" role="33vP2m">
<node concept="37vLTw" id="61G6TdBTrFw" role="2Oq$k0">
<ref role="3cqZAo" node="61G6TdBScAl" resolve="typecheckingService" />
</node>
<node concept="35c_gC" id="4pwDyRC1RnK" role="37wK5m">
<ref role="35c_gD" to="tpee:g7uibYu" resolve="ClassifierType" />
<node concept="liA8E" id="61G6TdBTszG" role="2OqNvi">
<ref role="37wK5l" to="tj24:7Bx7XgEiqaI" resolve="getCoerceTo" />
<node concept="37vLTw" id="4pwDyRC1ZNe" role="37wK5m">
<ref role="3cqZAo" node="4pwDyRC1RnR" resolve="typeofm" />
</node>
<node concept="35c_gC" id="4pwDyRC1RnK" role="37wK5m">
<ref role="35c_gD" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
</node>
</node>
</node>