Separate typing or return statement from checking its compatibility with method type

For convenience: to always get typeOf(return)
to unconditionally match on it (eg in closures lang)
This commit is contained in:
Grigorii Kirgizov 2020-04-20 22:26:00 +03:00
parent e1ff37b815
commit 5dcc71d2a5
1 changed files with 241 additions and 177 deletions

View File

@ -11684,8 +11684,127 @@
</node>
</node>
</node>
<node concept="1nLNMY" id="12QmIo_7slp" role="1nK1Vg">
<node concept="1nLNMY" id="4S1mDSNTDkN" role="1nK1Vg">
<property role="TrG5h" value="returnStatement" />
<node concept="2t___k" id="4S1mDSNTDkO" role="1nLNMg">
<ref role="2t_S0q" to="tpee:fzcpWvY" resolve="ReturnStatement" />
<node concept="3A20r5" id="4S1mDSNTDkP" role="2t_VXX">
<property role="TrG5h" value="retstmt" />
</node>
</node>
<node concept="3clFbS" id="4S1mDSNTDkQ" role="1nLNMH">
<node concept="3clFbJ" id="4S1mDSNTDkR" role="3cqZAp">
<node concept="3clFbS" id="4S1mDSNTDkS" role="3clFbx">
<node concept="3clFbH" id="4S1mDSNUr6p" role="3cqZAp" />
<node concept="1nLNNL" id="4S1mDSNTDlg" role="3cqZAp">
<node concept="1nLNMm" id="4S1mDSNTDlh" role="1nLNNK">
<node concept="3Aq93q" id="4S1mDSNTDli" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4S1mDSNTDlj" role="3Ip0Jz">
<node concept="3I6s7M" id="4S1mDSNTDlk" role="3I6sU7">
<node concept="3Aqt3T" id="4S1mDSNTDll" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="4S1mDSNTDlm" role="3AunhB">
<node concept="2OqwBi" id="4S1mDSNTEnC" role="37jj2">
<node concept="3A2sRY" id="4S1mDSNTEd3" role="2Oq$k0">
<ref role="3A2yKK" node="4S1mDSNTDkP" resolve="retstmt" />
</node>
<node concept="3TrEf2" id="4S1mDSNTEWm" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzcqZ_G" resolve="expression" />
</node>
</node>
</node>
<node concept="a7P8L" id="4S1mDSNTDlo" role="3AunhB">
<ref role="a7OzE" node="4S1mDSNTDls" resolve="RetT" />
</node>
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="4S1mDSNTDlp" role="0Rg$4">
<node concept="aZer4" id="4S1mDSNTDls" role="3XD1gS">
<property role="TrG5h" value="RetT" />
</node>
<node concept="32pEOW" id="4S1mDSNTDlt" role="3vLBG7" />
</node>
<node concept="3xSepi" id="4S1mDSNTDlu" role="3xSepv">
<node concept="3Aq9E8" id="4S1mDSNTDlv" role="3xSepj">
<node concept="3I6sU6" id="4S1mDSNTDlw" role="3Ip0Jz">
<node concept="3I6s7M" id="4S1mDSNTDlD" role="3I6sU7">
<node concept="3Aqt3T" id="4S1mDSNTDlE" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="4S1mDSNTDlF" role="3AunhB">
<node concept="3A2sRY" id="4S1mDSNTDlG" role="37jj2">
<ref role="3A2yKK" node="4S1mDSNTDkP" resolve="retstmt" />
</node>
</node>
<node concept="a7P8L" id="4S1mDSNTDlH" role="3AunhB">
<ref role="a7OzE" node="4S1mDSNTDls" resolve="RetT" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4S1mDSNUrbj" role="3cqZAp" />
</node>
<node concept="2OqwBi" id="4S1mDSNTDlT" role="3clFbw">
<node concept="2OqwBi" id="4S1mDSNTDlU" role="2Oq$k0">
<node concept="3A2sRY" id="4S1mDSNTDlV" role="2Oq$k0">
<ref role="3A2yKK" node="4S1mDSNTDkP" resolve="retstmt" />
</node>
<node concept="3TrEf2" id="4S1mDSNTDlW" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzcqZ_G" resolve="expression" />
</node>
</node>
<node concept="3x8VRR" id="4S1mDSNTDlX" role="2OqNvi" />
</node>
<node concept="9aQIb" id="4S1mDSNUr7E" role="9aQIa">
<node concept="3clFbS" id="4S1mDSNUr7F" role="9aQI4">
<node concept="3clFbH" id="4S1mDSNUrsK" role="3cqZAp" />
<node concept="1nLNNL" id="4S1mDSNUrd3" role="3cqZAp">
<node concept="1nLNMm" id="4S1mDSNUrd4" role="1nLNNK">
<node concept="3Aq93q" id="4S1mDSNUrd5" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4S1mDSNUrd6" role="3Ip0Jz">
<node concept="3I6s7M" id="4S1mDSNUrd7" role="3I6sU7">
<node concept="3Aqt3T" id="4S1mDSNUrsy" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfabR$" resolve="checkAll" />
</node>
</node>
</node>
</node>
<node concept="3xSepi" id="4S1mDSNUrdh" role="3xSepv">
<node concept="3Aq9E8" id="4S1mDSNUrdi" role="3xSepj">
<node concept="3I6sU6" id="4S1mDSNUrdj" role="3Ip0Jz">
<node concept="3I6s7M" id="4S1mDSNUrdk" role="3I6sU7">
<node concept="3Aqt3T" id="4S1mDSNUrdl" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="4S1mDSNUrdm" role="3AunhB">
<node concept="3A2sRY" id="4S1mDSNUrdn" role="37jj2">
<ref role="3A2yKK" node="4S1mDSNTDkP" resolve="retstmt" />
</node>
</node>
<node concept="ns1u0" id="4S1mDSNUrs_" role="3AunhB">
<ref role="ns1xF" node="JOGAOsVt3a" resolve="_void_" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4S1mDSNUrt3" role="3cqZAp" />
</node>
</node>
</node>
</node>
</node>
<node concept="1nLNMY" id="12QmIo_7slp" role="1nK1Vg">
<property role="TrG5h" value="checkReturnStatement" />
<node concept="2t___k" id="6BU$YTNKHsc" role="1nLNMg">
<ref role="2t_S0q" to="tpee:fzcpWvY" resolve="ReturnStatement" />
<node concept="3A20r5" id="6BU$YTNKHsd" role="2t_VXX">
@ -11693,170 +11812,115 @@
</node>
</node>
<node concept="3clFbS" id="3c$Di5ODE7r" role="1nLNMH">
<node concept="3clFbJ" id="3c$Di5ODE7s" role="3cqZAp">
<node concept="3clFbS" id="12QmIo_7slq" role="3clFbx">
<node concept="3clFbH" id="1Py6iKQ1qU" role="3cqZAp" />
<node concept="3cpWs8" id="1Py6iKQ4oJ" role="3cqZAp">
<node concept="3cpWsn" id="1Py6iKQ4oK" role="3cpWs9">
<property role="TrG5h" value="returnType" />
<node concept="3Tqbb2" id="1Py6iKQ4oC" role="1tU5fm">
<ref role="ehGHo" to="tpee:fz3vP1H" resolve="Type" />
</node>
<node concept="2OqwBi" id="1Py6iKQ4oL" role="33vP2m">
<node concept="2OqwBi" id="1Py6iKQ4oM" role="2Oq$k0">
<node concept="3A2sRY" id="1Py6iKQ4oN" role="2Oq$k0">
<ref role="3A2yKK" node="6BU$YTNKHsd" resolve="retstmt" />
</node>
<node concept="2Xjw5R" id="1Py6iKQ4oO" role="2OqNvi">
<node concept="1xMEDy" id="1Py6iKQ4oP" role="1xVPHs">
<node concept="chp4Y" id="1Py6iKQ4oQ" role="ri$Ld">
<ref role="cht4Q" to="tpee:fzclF7W" resolve="BaseMethodDeclaration" />
</node>
</node>
</node>
</node>
<node concept="3TrEf2" id="1Py6iKQ4oR" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzclF7X" resolve="returnType" />
</node>
</node>
</node>
<node concept="3clFbH" id="1Py6iKQ1qU" role="3cqZAp" />
<node concept="3cpWs8" id="1Py6iKQ4oJ" role="3cqZAp">
<node concept="3cpWsn" id="1Py6iKQ4oK" role="3cpWs9">
<property role="TrG5h" value="returnType" />
<node concept="3Tqbb2" id="1Py6iKQ4oC" role="1tU5fm">
<ref role="ehGHo" to="tpee:fz3vP1H" resolve="Type" />
</node>
<node concept="3clFbH" id="1Py6iKQ1rF" role="3cqZAp" />
<node concept="3clFbJ" id="1Py6iKQ4r9" role="3cqZAp">
<node concept="3clFbS" id="1Py6iKQ4rb" role="3clFbx">
<node concept="3cpWs8" id="3Be4SRvyYCp" role="3cqZAp">
<node concept="3cpWsn" id="3Be4SRvyYCq" role="3cpWs9">
<property role="TrG5h" value="retExpr" />
<node concept="3Tqbb2" id="3Be4SRvyYCn" role="1tU5fm">
<ref role="ehGHo" to="tpee:fz3vP1J" resolve="Expression" />
</node>
<node concept="2OqwBi" id="3Be4SRvyYCr" role="33vP2m">
<node concept="3A2sRY" id="3Be4SRvyYCs" role="2Oq$k0">
<ref role="3A2yKK" node="6BU$YTNKHsd" resolve="retstmt" />
</node>
<node concept="3TrEf2" id="3Be4SRvyYCt" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzcqZ_G" resolve="expression" />
</node>
<node concept="2OqwBi" id="1Py6iKQ4oL" role="33vP2m">
<node concept="2OqwBi" id="1Py6iKQ4oM" role="2Oq$k0">
<node concept="3A2sRY" id="1Py6iKQ4oN" role="2Oq$k0">
<ref role="3A2yKK" node="6BU$YTNKHsd" resolve="retstmt" />
</node>
<node concept="2Xjw5R" id="1Py6iKQ4oO" role="2OqNvi">
<node concept="1xMEDy" id="1Py6iKQ4oP" role="1xVPHs">
<node concept="chp4Y" id="1Py6iKQ4oQ" role="ri$Ld">
<ref role="cht4Q" to="tpee:fzclF7W" resolve="BaseMethodDeclaration" />
</node>
</node>
</node>
<node concept="3clFbH" id="3Be4SRvyYGy" role="3cqZAp" />
<node concept="3Hbl2A" id="1laj_RS_Ln5" role="3cqZAp">
<node concept="3clFbS" id="1laj_RS_Ln7" role="9aQI4">
<node concept="1nLNNL" id="12QmIo_7slr" role="3cqZAp">
<node concept="1nLNMm" id="12QmIo_7sls" role="1nLNNK">
<node concept="3Aq93q" id="6BU$YTNKHro" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4nIWweB$Y05" role="3Ip0Jz">
<node concept="3I6s7M" id="4nIWweB$Y06" role="3I6sU7">
<node concept="3Aqt3T" id="34$A1MfhpM5" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="1TH_SRmhrtx" role="3AunhB">
<node concept="37vLTw" id="3Be4SRvyYHk" role="37jj2">
<ref role="3cqZAo" node="3Be4SRvyYCq" resolve="retExpr" />
</node>
</node>
<node concept="a7P8L" id="34$A1MfhpM4" role="3AunhB">
<ref role="a7OzE" node="7nkyKX7$D08" resolve="RetExprT" />
</node>
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="7nkyKX7$D07" role="0Rg$4">
<node concept="aZer4" id="1Py6iKQ58c" role="3XD1gS">
<property role="TrG5h" value="RetT" />
</node>
<node concept="aZer4" id="1Py6iKQ58X" role="3XD1gS">
<property role="TrG5h" value="CapRetExpT" />
</node>
<node concept="aZer4" id="7nkyKX7$D08" role="3XD1gS">
<property role="TrG5h" value="RetExprT" />
</node>
<node concept="32pEOW" id="24ciDNzxNCn" role="3vLBG7" />
</node>
<node concept="3xSepi" id="6E2cNicdiig" role="3xSepv">
<node concept="3Aq9E8" id="6BU$YTNKHrc" role="3xSepj">
<node concept="3I6sU6" id="4nIWweB$Y7$" role="3Ip0Jz">
<node concept="3I6s7M" id="1Py6iKQ58v" role="3I6sU7">
<node concept="3jbYBd" id="5itBwMb5r7u" role="3I6s78">
<ref role="3jbY9l" node="5itBwMau8m1" resolve="lift" />
<node concept="37vLTw" id="1Py6iKQ58J" role="3jbY8P">
<ref role="3cqZAo" node="1Py6iKQ4oK" resolve="returnType" />
</node>
<node concept="a7P8L" id="1Py6iKQ58G" role="3jbY8V">
<ref role="a7OzE" node="1Py6iKQ58c" resolve="RetT" />
</node>
</node>
</node>
<node concept="3I6s7M" id="1Py6iKQ582" role="3I6sU7">
<node concept="3Aqt3T" id="1Py6iKQ580" role="3I6s78">
<ref role="3AqCNq" node="ONSj15RYDg" resolve="compatibleWith" />
<node concept="a7P8L" id="1Py6iKRNd$" role="3AunhB">
<ref role="a7OzE" node="7nkyKX7$D08" resolve="RetExprT" />
</node>
<node concept="a7P8L" id="1Py6iKQ58T" role="3AunhB">
<ref role="a7OzE" node="1Py6iKQ58c" resolve="RetT" />
</node>
</node>
</node>
<node concept="3I6s7M" id="4nIWweB$Y7_" role="3I6sU7">
<node concept="3Aqt3T" id="34$A1MfhpOi" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="1TH_SRmhrty" role="3AunhB">
<node concept="3A2sRY" id="34$A1MfhpOg" role="37jj2">
<ref role="3A2yKK" node="6BU$YTNKHsd" resolve="retstmt" />
</node>
</node>
<node concept="a7P8L" id="1Py6iKQ5a0" role="3AunhB">
<ref role="a7OzE" node="7nkyKX7$D08" resolve="RetExprT" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3xSepi" id="6E2cNicdiih" role="3xSepv">
<node concept="3Aq9E8" id="3Be4SRvxeFr" role="3xSepj">
<node concept="3I6sU6" id="3Be4SRvxeFs" role="3Ip0Jz">
<node concept="3I6s7M" id="1laj_RS_LEL" role="3I6sU7">
<node concept="1lHd6T" id="1laj_RS_LEK" role="3I6s78">
<property role="1lHdp1" value="4jcOV4hu0n_/ERROR" />
<node concept="Xl_RD" id="1laj_RS_LEU" role="1ljv2e">
<property role="Xl_RC" value="incompatible type" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="1laj_RS_LEw" role="3Hbm9W">
<ref role="3cqZAo" node="3Be4SRvyYCq" resolve="retExpr" />
</node>
</node>
<node concept="3clFbH" id="3Be4SRvxeEU" role="3cqZAp" />
</node>
<node concept="2OqwBi" id="1Py6iKQ4Nc" role="3clFbw">
<node concept="37vLTw" id="1Py6iKQ4BF" role="2Oq$k0">
<ref role="3cqZAo" node="1Py6iKQ4oK" resolve="returnType" />
</node>
<node concept="3x8VRR" id="1Py6iKQ56C" role="2OqNvi" />
<node concept="3TrEf2" id="1Py6iKQ4oR" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzclF7X" resolve="returnType" />
</node>
</node>
</node>
<node concept="2OqwBi" id="6BU$YTNKJo4" role="3clFbw">
<node concept="2OqwBi" id="6BU$YTNKIAW" role="2Oq$k0">
<node concept="3A2sRY" id="6BU$YTNKIzR" role="2Oq$k0">
<ref role="3A2yKK" node="6BU$YTNKHsd" resolve="retstmt" />
</node>
<node concept="3TrEf2" id="6BU$YTNKJ73" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzcqZ_G" resolve="expression" />
</node>
<node concept="3clFbJ" id="1Py6iKQ4r9" role="3cqZAp">
<node concept="3clFbS" id="1Py6iKQ4rb" role="3clFbx">
<node concept="3clFbH" id="3Be4SRvyYGy" role="3cqZAp" />
<node concept="1nLNNL" id="12QmIo_7slr" role="3cqZAp">
<node concept="1nLNMm" id="12QmIo_7sls" role="1nLNNK">
<node concept="3Aq93q" id="6BU$YTNKHro" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4nIWweB$Y05" role="3Ip0Jz">
<node concept="3I6s7M" id="4nIWweB$Y06" role="3I6sU7">
<node concept="3Aqt3T" id="34$A1MfhpM5" role="3I6s78">
<ref role="3AqCNq" node="34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="1TH_SRmhrtx" role="3AunhB">
<node concept="3A2sRY" id="4S1mDSNUs3$" role="37jj2">
<ref role="3A2yKK" node="6BU$YTNKHsd" resolve="retstmt" />
</node>
</node>
<node concept="a7P8L" id="34$A1MfhpM4" role="3AunhB">
<ref role="a7OzE" node="7nkyKX7$D08" resolve="RetT" />
</node>
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="7nkyKX7$D07" role="0Rg$4">
<node concept="aZer4" id="1Py6iKQ58c" role="3XD1gS">
<property role="TrG5h" value="RetDeclT" />
</node>
<node concept="aZer4" id="7nkyKX7$D08" role="3XD1gS">
<property role="TrG5h" value="RetT" />
</node>
<node concept="32pEOW" id="24ciDNzxNCn" role="3vLBG7" />
</node>
<node concept="3xSepi" id="6E2cNicdiig" role="3xSepv">
<node concept="3Aq9E8" id="6BU$YTNKHrc" role="3xSepj">
<node concept="3I6sU6" id="4nIWweB$Y7$" role="3Ip0Jz">
<node concept="3I6s7M" id="1Py6iKQ58v" role="3I6sU7">
<node concept="3jbYBd" id="5itBwMb5r7u" role="3I6s78">
<ref role="3jbY9l" node="5itBwMau8m1" resolve="lift" />
<node concept="37vLTw" id="1Py6iKQ58J" role="3jbY8P">
<ref role="3cqZAo" node="1Py6iKQ4oK" resolve="returnType" />
</node>
<node concept="a7P8L" id="1Py6iKQ58G" role="3jbY8V">
<ref role="a7OzE" node="1Py6iKQ58c" resolve="RetDeclT" />
</node>
</node>
</node>
<node concept="3I6s7M" id="1Py6iKQ582" role="3I6sU7">
<node concept="3Aqt3T" id="1Py6iKQ580" role="3I6s78">
<ref role="3AqCNq" node="ONSj15RYDg" resolve="compatibleWith" />
<node concept="a7P8L" id="1Py6iKRNd$" role="3AunhB">
<ref role="a7OzE" node="7nkyKX7$D08" resolve="RetT" />
</node>
<node concept="a7P8L" id="1Py6iKQ58T" role="3AunhB">
<ref role="a7OzE" node="1Py6iKQ58c" resolve="RetDeclT" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3xSepi" id="6E2cNicdiih" role="3xSepv">
<node concept="3Aq9E8" id="3Be4SRvxeFr" role="3xSepj">
<node concept="3I6sU6" id="3Be4SRvxeFs" role="3Ip0Jz">
<node concept="3I6s7M" id="1laj_RS_LEL" role="3I6sU7">
<node concept="1lHd6T" id="1laj_RS_LEK" role="3I6s78">
<property role="1lHdp1" value="4jcOV4hu0n_/ERROR" />
<node concept="Xl_RD" id="1laj_RS_LEU" role="1ljv2e">
<property role="Xl_RC" value="incompatible type" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3x8VRR" id="6BU$YTNKJAs" role="2OqNvi" />
<node concept="3clFbH" id="3Be4SRvxeEU" role="3cqZAp" />
</node>
<node concept="2OqwBi" id="1Py6iKQ4Nc" role="3clFbw">
<node concept="37vLTw" id="1Py6iKQ4BF" role="2Oq$k0">
<ref role="3cqZAo" node="1Py6iKQ4oK" resolve="returnType" />
</node>
<node concept="3x8VRR" id="1Py6iKQ56C" role="2OqNvi" />
</node>
</node>
</node>
@ -17669,6 +17733,28 @@
</node>
</node>
</node>
<node concept="3iF_et" id="5itBwMau8m1" role="3iTdIJ">
<property role="TrG5h" value="lift" />
<ref role="3iEmPG" to="tpee:fz3vP1H" resolve="Type" />
<node concept="3uniRu" id="5itBwMau8pc" role="3iPQ67">
<node concept="aZer4" id="5itBwMau8pd" role="3XD1gS">
<property role="TrG5h" value="Type" />
</node>
<node concept="32pEOW" id="5itBwMau8pp" role="3vLBG7" />
</node>
<node concept="3i76O8" id="5itBwMaLICh" role="3i7zYg">
<property role="TrG5h" value="substitution" />
<node concept="3uibUv" id="5itBwMaLJw4" role="3i7YY_">
<ref role="3uigEE" node="6EY0p2w8VOq" resolve="TypeVarSubstitution" />
</node>
</node>
<node concept="3i76O8" id="5itBwMb2a1b" role="3i7zYg">
<property role="TrG5h" value="allowUncheckedConversion" />
<node concept="3uibUv" id="5itBwMb2ata" role="3i7YY_">
<ref role="3uigEE" to="wyt6:~Boolean" resolve="Boolean" />
</node>
</node>
</node>
<node concept="3iyZe8" id="5itBwMau8m4" role="0oKgB">
<ref role="3iRiWT" node="5itBwMau8m1" resolve="lift" />
<node concept="3clFbS" id="5itBwMau8m5" role="3iwQuN">
@ -17700,28 +17786,6 @@
<node concept="32pEOW" id="5itBwMau8qn" role="3vLBG7" />
</node>
</node>
<node concept="3iF_et" id="5itBwMau8m1" role="3iTdIJ">
<property role="TrG5h" value="lift" />
<ref role="3iEmPG" to="tpee:fz3vP1H" resolve="Type" />
<node concept="3uniRu" id="5itBwMau8pc" role="3iPQ67">
<node concept="aZer4" id="5itBwMau8pd" role="3XD1gS">
<property role="TrG5h" value="Type" />
</node>
<node concept="32pEOW" id="5itBwMau8pp" role="3vLBG7" />
</node>
<node concept="3i76O8" id="5itBwMaLICh" role="3i7zYg">
<property role="TrG5h" value="substitution" />
<node concept="3uibUv" id="5itBwMaLJw4" role="3i7YY_">
<ref role="3uigEE" node="6EY0p2w8VOq" resolve="TypeVarSubstitution" />
</node>
</node>
<node concept="3i76O8" id="5itBwMb2a1b" role="3i7zYg">
<property role="TrG5h" value="allowUncheckedConversion" />
<node concept="3uibUv" id="5itBwMb2ata" role="3i7YY_">
<ref role="3uigEE" to="wyt6:~Boolean" resolve="Boolean" />
</node>
</node>
</node>
</node>
<node concept="AVZre" id="1_2bK$p16Ic">
<property role="3GE5qa" value="rule.relation" />