Highlight results of control flow analysis. Drop dead code.

This commit is contained in:
Fedor Isakov 2018-06-16 13:22:27 +02:00
parent 2cc6d44705
commit 57cb04b3f8
4 changed files with 423 additions and 75 deletions

View File

@ -14,9 +14,10 @@
<dependency reexport="false">8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)</dependency>
<dependency reexport="false">a1250a4d-c090-42c3-ad7c-d298a3357dd4(jetbrains.mps.make.runtime)</dependency>
<dependency reexport="false">ffcd9ef5-e931-4da9-a8d1-eb9bf80d19b4(jetbrains.mps.lang.controlflow.runtime)</dependency>
<dependency reexport="false">f97d84b2-8bad-4fdd-8ede-da17b3eacf4c(jetbrains.mps.coderules)</dependency>
<dependency reexport="true">f97d84b2-8bad-4fdd-8ede-da17b3eacf4c(jetbrains.mps.coderules)</dependency>
<dependency reexport="false">517911e5-605f-4310-831b-10d44e0f5237(jetbrains.mps.controlflow)</dependency>
<dependency reexport="false">5b1f863d-65a0-41a6-a801-33896be24202(jetbrains.mps.ide.editor)</dependency>
<dependency reexport="false">4d5d9aa1-7b71-4888-9100-1b793e5328a6(jetbrains.mps.coderules.ui)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="6" />
@ -41,6 +42,7 @@
<module reference="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" version="0" />
<module reference="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61(MPS.Platform)" version="0" />
<module reference="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c(jetbrains.mps.coderules)" version="0" />
<module reference="4d5d9aa1-7b71-4888-9100-1b793e5328a6(jetbrains.mps.coderules.ui)" version="0" />
<module reference="517911e5-605f-4310-831b-10d44e0f5237(jetbrains.mps.controlflow)" version="0" />
<module reference="eacb1d2f-fed3-4344-a1dd-143fac2e9c20(jetbrains.mps.controlflow.ui)" version="0" />
<module reference="5b1f863d-65a0-41a6-a801-33896be24202(jetbrains.mps.ide.editor)" version="0" />

View File

@ -26,6 +26,8 @@
<import index="lui2" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.module(MPS.OpenAPI/)" />
<import index="fjx4" ref="r:5cb7c45c-18d8-4304-8c38-29c80242b908(jetbrains.mps.controlflow.service)" />
<import index="ekwn" ref="r:9832fb5f-2578-4b58-8014-a5de79da988e(jetbrains.mps.ide.editor.actions)" />
<import index="unkn" ref="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c/java:io.reactivex(jetbrains.mps.coderules/)" />
<import index="o35r" ref="r:76281d8a-46ce-405f-8cfc-287ee8597b54(jetbrains.mps.coderules.ui.plugin)" />
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" implicit="true" />
</imports>
<registry>
@ -71,6 +73,12 @@
</concept>
<concept id="1202948039474" name="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" flags="nn" index="liA8E" />
<concept id="1465982738277781862" name="jetbrains.mps.baseLanguage.structure.PlaceholderMember" flags="ng" index="2tJIrI" />
<concept id="1188207840427" name="jetbrains.mps.baseLanguage.structure.AnnotationInstance" flags="nn" index="2AHcQZ">
<reference id="1188208074048" name="annotation" index="2AI5Lk" />
</concept>
<concept id="1188208481402" name="jetbrains.mps.baseLanguage.structure.HasAnnotation" flags="ng" index="2AJDlI">
<child id="1188208488637" name="annotation" index="2AJF6D" />
</concept>
<concept id="1224848483129" name="jetbrains.mps.baseLanguage.structure.IBLDeprecatable" flags="ng" index="IEa8$">
<property id="1224848525476" name="isDeprecated" index="IEkAT" />
</concept>
@ -167,6 +175,7 @@
</concept>
<concept id="1107535904670" name="jetbrains.mps.baseLanguage.structure.ClassifierType" flags="in" index="3uibUv">
<reference id="1107535924139" name="classifier" index="3uigEE" />
<child id="1109201940907" name="parameter" index="11_B2D" />
</concept>
<concept id="1081773326031" name="jetbrains.mps.baseLanguage.structure.BinaryOperation" flags="nn" index="3uHJSO">
<child id="1081773367579" name="rightExpression" index="3uHU7w" />
@ -194,6 +203,7 @@
</language>
<language id="fd392034-7849-419d-9071-12563d152375" name="jetbrains.mps.baseLanguage.closures">
<concept id="1199569711397" name="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" flags="nn" index="1bVj0M">
<child id="1199569906740" name="parameter" index="1bW2Oz" />
<child id="1199569916463" name="body" index="1bW5cS" />
</concept>
</language>
@ -818,7 +828,7 @@
<node concept="TSZUe" id="7WKNeR8TcYb" role="2OqNvi">
<node concept="2ShNRf" id="78H58oeuhl2" role="25WWJ7">
<node concept="1pGfFk" id="78H58oeup$C" role="2ShVmc">
<ref role="37wK5l" to="fjx4:78H58oeu6OE" resolve="ControlflowEvaluateRulesStep" />
<ref role="37wK5l" to="fjx4:78H58oeu6OE" resolve="ControlflowStep" />
<node concept="37vLTw" id="78H58oeuriP" role="37wK5m">
<ref role="3cqZAo" node="7WKNeR8SQxI" resolve="repository" />
</node>
@ -827,6 +837,26 @@
</node>
</node>
</node>
<node concept="3clFbF" id="6Yb9hAqKiZx" role="3cqZAp">
<node concept="2OqwBi" id="6Yb9hAqKiZy" role="3clFbG">
<node concept="37vLTw" id="6Yb9hAqKiZz" role="2Oq$k0">
<ref role="3cqZAo" node="7WKNeR8TcXs" resolve="steps" />
</node>
<node concept="TSZUe" id="6Yb9hAqKiZ$" role="2OqNvi">
<node concept="2ShNRf" id="6Yb9hAqKiZ_" role="25WWJ7">
<node concept="1pGfFk" id="6Yb9hAqKpBk" role="2ShVmc">
<ref role="37wK5l" node="1pPth$lGTrm" resolve="HighlightingControlflowStep" />
<node concept="37vLTw" id="6Yb9hAqKpN0" role="37wK5m">
<ref role="3cqZAo" node="6hqFpWnfwwm" resolve="editorComponent" />
</node>
<node concept="37vLTw" id="6Yb9hAqKqsC" role="37wK5m">
<ref role="3cqZAo" node="6hqFpWnfkNg" resolve="mpsProject" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="7WKNeR8SQyz" role="3cqZAp" />
<node concept="3clFbF" id="7WKNeR8SQy$" role="3cqZAp">
<node concept="2OqwBi" id="7WKNeR8SQy_" role="3clFbG">
@ -989,5 +1019,254 @@
<ref role="2f8Tey" to="ekwn:1xsN4xJX8VY" resolve="debug" />
</node>
</node>
<node concept="312cEu" id="1pPth$lC1vN">
<property role="2bfB8j" value="false" />
<property role="TrG5h" value="HighlightingControlflowStep" />
<property role="3GE5qa" value="launch.step" />
<node concept="2tJIrI" id="52a_GfIQ21d" role="jymVt" />
<node concept="3clFbW" id="1pPth$lGTrm" role="jymVt">
<node concept="37vLTG" id="1pPth$lGTEd" role="3clF46">
<property role="TrG5h" value="editorComponent" />
<node concept="3uibUv" id="1pPth$lGU5$" role="1tU5fm">
<ref role="3uigEE" to="exr9:~EditorComponent" resolve="EditorComponent" />
</node>
</node>
<node concept="37vLTG" id="6kREIVkNEO2" role="3clF46">
<property role="TrG5h" value="mpsProject" />
<node concept="3uibUv" id="6kREIVkNFmB" role="1tU5fm">
<ref role="3uigEE" to="z1c4:~MPSProject" resolve="MPSProject" />
</node>
</node>
<node concept="3cqZAl" id="1pPth$lGTro" role="3clF45" />
<node concept="3Tm1VV" id="6kREIVkRzQN" role="1B3o_S" />
<node concept="3clFbS" id="1pPth$lGTrq" role="3clF47">
<node concept="3clFbF" id="1pPth$lGU8j" role="3cqZAp">
<node concept="37vLTI" id="1pPth$lGU8l" role="3clFbG">
<node concept="2OqwBi" id="1pPth$lGU8p" role="37vLTJ">
<node concept="Xjq3P" id="1pPth$lGU8s" role="2Oq$k0" />
<node concept="2OwXpG" id="1pPth$lGU8o" role="2OqNvi">
<ref role="2Oxat5" node="1pPth$lGU8f" resolve="editorComponent" />
</node>
</node>
<node concept="37vLTw" id="1pPth$lGU8t" role="37vLTx">
<ref role="3cqZAo" node="1pPth$lGTEd" resolve="editorComponent" />
</node>
</node>
</node>
<node concept="3clFbF" id="6kREIVkNFsh" role="3cqZAp">
<node concept="37vLTI" id="6kREIVkNFsj" role="3clFbG">
<node concept="2OqwBi" id="6kREIVkNHt8" role="37vLTJ">
<node concept="Xjq3P" id="6kREIVkNHHt" role="2Oq$k0" />
<node concept="2OwXpG" id="6kREIVkNHtb" role="2OqNvi">
<ref role="2Oxat5" node="6kREIVkNFsd" resolve="mpsProject" />
</node>
</node>
<node concept="37vLTw" id="6kREIVkNFsn" role="37vLTx">
<ref role="3cqZAo" node="6kREIVkNEO2" resolve="mpsProject" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="3F6vMxq_3wR" role="jymVt" />
<node concept="3clFb_" id="1pPth$lN12z" role="jymVt">
<property role="TrG5h" value="info" />
<property role="1EzhhJ" value="false" />
<node concept="17QB3L" id="1pPth$lN12$" role="3clF45" />
<node concept="3Tm1VV" id="6kREIVkR$6P" role="1B3o_S" />
<node concept="3clFbS" id="1pPth$lN12B" role="3clF47">
<node concept="3clFbF" id="1pPth$lN1GX" role="3cqZAp">
<node concept="Xl_RD" id="1pPth$lN1GW" role="3clFbG">
<property role="Xl_RC" value="highlighting results" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="Hg6EncbjjT" role="jymVt" />
<node concept="3clFb_" id="Hg6EncbkRR" role="jymVt">
<property role="TrG5h" value="schedule" />
<property role="1EzhhJ" value="false" />
<node concept="37vLTG" id="Hg6EncbkRS" role="3clF46">
<property role="TrG5h" value="prevStep" />
<node concept="3uibUv" id="Hg6EncbkRT" role="1tU5fm">
<ref role="3uigEE" to="unkn:~Single" resolve="Single" />
<node concept="3uibUv" id="6Yb9hAqJLJ$" role="11_B2D">
<ref role="3uigEE" to="fjx4:78H58oeu6dG" resolve="ControlflowStep" />
</node>
</node>
</node>
<node concept="37vLTG" id="6kREIVkNB3d" role="3clF46">
<property role="TrG5h" value="subscribeScheduler" />
<node concept="3uibUv" id="6kREIVkNB3e" role="1tU5fm">
<ref role="3uigEE" to="unkn:~Scheduler" resolve="Scheduler" />
</node>
</node>
<node concept="3uibUv" id="Hg6EncbkRV" role="3clF45">
<ref role="3uigEE" to="unkn:~Single" resolve="Single" />
<node concept="3uibUv" id="Hg6Enc$1Of" role="11_B2D">
<ref role="3uigEE" node="1pPth$lC1vN" resolve="HighlightingControlflowStep" />
</node>
</node>
<node concept="3Tmbuc" id="Hg6EncFQZO" role="1B3o_S" />
<node concept="3clFbS" id="Hg6EncbkS1" role="3clF47">
<node concept="3clFbF" id="5lxnBcU04KQ" role="3cqZAp">
<node concept="2OqwBi" id="5lxnBcU05yI" role="3clFbG">
<node concept="37vLTw" id="5lxnBcU04KO" role="2Oq$k0">
<ref role="3cqZAo" node="Hg6EncbkRS" resolve="prevStep" />
</node>
<node concept="liA8E" id="5lxnBcU085M" role="2OqNvi">
<ref role="37wK5l" to="unkn:~Single.flatMap(io.reactivex.functions.Function):io.reactivex.Single" resolve="flatMap" />
<node concept="1bVj0M" id="5lxnBcU08CP" role="37wK5m">
<node concept="37vLTG" id="5lxnBcU09rm" role="1bW2Oz">
<property role="TrG5h" value="prev" />
<node concept="3uibUv" id="6Yb9hAqJMt8" role="1tU5fm">
<ref role="3uigEE" to="fjx4:78H58oeu6dG" resolve="ControlflowStep" />
</node>
</node>
<node concept="3clFbS" id="5lxnBcU08CQ" role="1bW5cS">
<node concept="3clFbH" id="5lxnBcU08SE" role="3cqZAp" />
<node concept="3cpWs8" id="78H58of3fK6" role="3cqZAp">
<node concept="3cpWsn" id="78H58of3fK7" role="3cpWs9">
<property role="TrG5h" value="task" />
<node concept="3uibUv" id="78H58of3fJn" role="1tU5fm">
<ref role="3uigEE" to="o35r:78H58oeT9Hs" resolve="HighlightingTask" />
</node>
<node concept="2ShNRf" id="78H58of3fKb" role="33vP2m">
<node concept="1pGfFk" id="78H58of3fKc" role="2ShVmc">
<ref role="37wK5l" to="o35r:78H58oeTywK" resolve="HighlightingTask" />
<node concept="2OqwBi" id="78H58of3fKd" role="37wK5m">
<node concept="2OqwBi" id="78H58of3fKe" role="2Oq$k0">
<node concept="Xjq3P" id="78H58of3fKf" role="2Oq$k0" />
<node concept="2OwXpG" id="78H58of3fKg" role="2OqNvi">
<ref role="2Oxat5" node="1pPth$lGU8f" resolve="editorComponent" />
</node>
</node>
<node concept="liA8E" id="78H58of3fKh" role="2OqNvi">
<ref role="37wK5l" to="exr9:~EditorComponent.getEditedNode():org.jetbrains.mps.openapi.model.SNode" resolve="getEditedNode" />
</node>
</node>
<node concept="2OqwBi" id="78H58of3fKi" role="37wK5m">
<node concept="Xjq3P" id="78H58of3fKj" role="2Oq$k0" />
<node concept="2OwXpG" id="78H58of3fKk" role="2OqNvi">
<ref role="2Oxat5" node="1pPth$lGU8f" resolve="editorComponent" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="78H58of3nRc" role="3cqZAp">
<node concept="37vLTI" id="78H58of3nRd" role="3clFbG">
<node concept="2OqwBi" id="78H58of3nRe" role="37vLTx">
<node concept="37vLTw" id="78H58of3nRf" role="2Oq$k0">
<ref role="3cqZAo" node="78H58of3fK7" resolve="task" />
</node>
<node concept="liA8E" id="78H58of3fKp" role="2OqNvi">
<ref role="37wK5l" to="o35r:78H58oeToTl" resolve="withErrors" />
<node concept="2OqwBi" id="78H58of3fKq" role="37wK5m">
<node concept="37vLTw" id="78H58of3fKr" role="2Oq$k0">
<ref role="3cqZAo" node="5lxnBcU09rm" resolve="prev" />
</node>
<node concept="liA8E" id="78H58of3fKs" role="2OqNvi">
<ref role="37wK5l" to="fjx4:7lt0LtQA50U" resolve="getErrors" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="78H58of3nRk" role="37vLTJ">
<ref role="3cqZAo" node="78H58of3fK7" resolve="task" />
</node>
</node>
</node>
<node concept="3clFbF" id="78H58of3s4V" role="3cqZAp">
<node concept="37vLTI" id="78H58of3s4W" role="3clFbG">
<node concept="2OqwBi" id="78H58of3s4X" role="37vLTx">
<node concept="37vLTw" id="78H58of3s4Y" role="2Oq$k0">
<ref role="3cqZAo" node="78H58of3fK7" resolve="task" />
</node>
<node concept="liA8E" id="78H58of3fKt" role="2OqNvi">
<ref role="37wK5l" to="o35r:78H58oeTpjT" resolve="withTracetabs" />
<node concept="2OqwBi" id="78H58of3fKu" role="37wK5m">
<node concept="liA8E" id="78H58of3fKv" role="2OqNvi">
<ref role="37wK5l" to="fjx4:6kREIVl0T6j" resolve="getTraceTabComponents" />
</node>
<node concept="37vLTw" id="78H58of3fKw" role="2Oq$k0">
<ref role="3cqZAo" node="5lxnBcU09rm" resolve="prev" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="78H58of3s53" role="37vLTJ">
<ref role="3cqZAo" node="78H58of3fK7" resolve="task" />
</node>
</node>
</node>
<node concept="3clFbH" id="78H58of3v9B" role="3cqZAp" />
<node concept="3clFbF" id="5lxnBcU0aba" role="3cqZAp">
<node concept="2OqwBi" id="5lxnBcU0d7B" role="3clFbG">
<node concept="2YIFZM" id="6Yb9hAqxX1a" role="2Oq$k0">
<ref role="1Pybhc" to="o35r:41ox5VnpFrR" resolve="HighlightingPlugin" />
<ref role="37wK5l" to="o35r:78H58of26Si" resolve="scheduleHighlighting" />
<node concept="37vLTw" id="78H58of3wcK" role="37wK5m">
<ref role="3cqZAo" node="6kREIVkNFsd" resolve="mpsProject" />
</node>
<node concept="37vLTw" id="78H58of3wcL" role="37wK5m">
<ref role="3cqZAo" node="78H58of3fK7" resolve="task" />
</node>
<node concept="37vLTw" id="78H58of3wcM" role="37wK5m">
<ref role="3cqZAo" node="6kREIVkNB3d" resolve="subscribeScheduler" />
</node>
</node>
<node concept="liA8E" id="5lxnBcU0eq5" role="2OqNvi">
<ref role="37wK5l" to="unkn:~Completable.andThen(io.reactivex.SingleSource):io.reactivex.Single" resolve="andThen" />
<node concept="2YIFZM" id="5lxnBcU0gP7" role="37wK5m">
<ref role="1Pybhc" to="unkn:~Single" resolve="Single" />
<ref role="37wK5l" to="unkn:~Single.fromCallable(java.util.concurrent.Callable):io.reactivex.Single" resolve="fromCallable" />
<node concept="1bVj0M" id="5lxnBcU0iBX" role="37wK5m">
<node concept="3clFbS" id="5lxnBcU0iBY" role="1bW5cS">
<node concept="3clFbF" id="5lxnBcU0nAW" role="3cqZAp">
<node concept="Xjq3P" id="5lxnBcU0nAU" role="3clFbG" />
</node>
<node concept="3clFbH" id="78H58of3wTG" role="3cqZAp" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="5lxnBcU0rmn" role="3cqZAp" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="Hg6EncbkS2" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="Hg6EncbjnH" role="jymVt" />
<node concept="3Tm1VV" id="3F6vMxq_2US" role="1B3o_S" />
<node concept="3uibUv" id="1pPth$lC2Ed" role="1zkMxy">
<ref role="3uigEE" to="1yqb:1pPth$lAzAx" resolve="Step" />
<node concept="3uibUv" id="6Yb9hAqJL3K" role="11_B2D">
<ref role="3uigEE" to="fjx4:78H58oeu6dG" resolve="ControlflowStep" />
</node>
</node>
<node concept="312cEg" id="1pPth$lGU8f" role="jymVt">
<property role="TrG5h" value="editorComponent" />
<node concept="3Tm6S6" id="1pPth$lGU8g" role="1B3o_S" />
<node concept="3uibUv" id="1pPth$lGU8i" role="1tU5fm">
<ref role="3uigEE" to="exr9:~EditorComponent" resolve="EditorComponent" />
</node>
</node>
<node concept="312cEg" id="6kREIVkNFsd" role="jymVt">
<property role="TrG5h" value="mpsProject" />
<node concept="3Tm6S6" id="6kREIVkNFse" role="1B3o_S" />
<node concept="3uibUv" id="6kREIVkNFsg" role="1tU5fm">
<ref role="3uigEE" to="z1c4:~MPSProject" resolve="MPSProject" />
</node>
</node>
</node>
</model>

View File

@ -19,8 +19,16 @@
<import index="33ny" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.util(JDK/)" />
<import index="w7la" ref="bbf5c548-7111-4a53-a117-cdefc664cf34/java:jetbrains.mps.logic.reactor.evaluation(jetbrains.mps.logic.reactor/)" />
<import index="mhbf" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.model(MPS.OpenAPI/)" />
<import index="dxuu" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:javax.swing(JDK/)" />
<import index="unkn" ref="f97d84b2-8bad-4fdd-8ede-da17b3eacf4c/java:io.reactivex(jetbrains.mps.coderules/)" implicit="true" />
<import index="yg8f" ref="r:e213377a-f1a7-4ba7-9d08-96bcb97ed8ce(jetbrains.mps.logic.builtin)" implicit="true" />
</imports>
<registry>
<language id="a247e09e-2435-45ba-b8d2-07e93feba96a" name="jetbrains.mps.baseLanguage.tuples">
<concept id="1238852151516" name="jetbrains.mps.baseLanguage.tuples.structure.IndexedTupleType" flags="in" index="1LlUBW">
<child id="1238852204892" name="componentType" index="1Lm7xW" />
</concept>
</language>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1215693861676" name="jetbrains.mps.baseLanguage.structure.BaseAssignmentExpression" flags="nn" index="d038R">
<child id="1068498886297" name="rValue" index="37vLTx" />
@ -90,6 +98,7 @@
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
<concept id="1068580123157" name="jetbrains.mps.baseLanguage.structure.Statement" flags="nn" index="3clFbH" />
<concept id="1068580123159" name="jetbrains.mps.baseLanguage.structure.IfStatement" flags="nn" index="3clFbJ">
<child id="1068580123160" name="condition" index="3clFbw" />
<child id="1068580123161" name="ifTrue" index="3clFbx" />
@ -110,6 +119,7 @@
<reference id="1068499141037" name="baseMethodDeclaration" index="37wK5l" />
<child id="1068499141038" name="actualArgument" index="37wK5m" />
</concept>
<concept id="1073063089578" name="jetbrains.mps.baseLanguage.structure.SuperMethodCall" flags="nn" index="3nyPlj" />
<concept id="1212685548494" name="jetbrains.mps.baseLanguage.structure.ClassCreator" flags="nn" index="1pGfFk" />
<concept id="1107461130800" name="jetbrains.mps.baseLanguage.structure.Classifier" flags="ng" index="3pOWGL">
<property id="521412098689998745" name="nonStatic" index="2bfB8j" />
@ -141,6 +151,12 @@
<reference id="1170346070688" name="classifier" index="1Y3XeK" />
</concept>
</language>
<language id="fd392034-7849-419d-9071-12563d152375" name="jetbrains.mps.baseLanguage.closures">
<concept id="1199569711397" name="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" flags="nn" index="1bVj0M">
<child id="1199569906740" name="parameter" index="1bW2Oz" />
<child id="1199569916463" name="body" index="1bW5cS" />
</concept>
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="1145404486709" name="jetbrains.mps.lang.smodel.structure.SemanticDowncastExpression" flags="nn" index="2JrnkZ">
<child id="1145404616321" name="leftExpression" index="2JrQYb" />
@ -153,6 +169,13 @@
</concept>
</language>
<language id="83888646-71ce-4f1c-9c53-c54016f6ad4f" name="jetbrains.mps.baseLanguage.collections">
<concept id="1151688443754" name="jetbrains.mps.baseLanguage.collections.structure.ListType" flags="in" index="_YKpA">
<child id="1151688676805" name="elementType" index="_ZDj9" />
</concept>
<concept id="1237721394592" name="jetbrains.mps.baseLanguage.collections.structure.AbstractContainerCreator" flags="nn" index="HWqM0">
<child id="1237721435807" name="elementType" index="HW$YZ" />
</concept>
<concept id="1160600644654" name="jetbrains.mps.baseLanguage.collections.structure.ListCreatorWithInit" flags="nn" index="Tc6Ow" />
<concept id="1197683403723" name="jetbrains.mps.baseLanguage.collections.structure.MapType" flags="in" index="3rvAFt">
<child id="1197683466920" name="keyType" index="3rvQeY" />
<child id="1197683475734" name="valueType" index="3rvSg0" />
@ -395,7 +418,7 @@
</node>
</node>
<node concept="312cEu" id="78H58oeu6dG">
<property role="TrG5h" value="ControlflowEvaluateRulesStep" />
<property role="TrG5h" value="ControlflowStep" />
<node concept="2tJIrI" id="78H58oeu6M4" role="jymVt" />
<node concept="3clFbW" id="78H58oeu6OE" role="jymVt">
<node concept="37vLTG" id="78H58oeu6VL" role="3clF46">
@ -445,6 +468,82 @@
</node>
</node>
<node concept="2tJIrI" id="78H58oeu6Qq" role="jymVt" />
<node concept="2tJIrI" id="6Yb9hAqJRts" role="jymVt" />
<node concept="3clFb_" id="6Yb9hAqJSaM" role="jymVt">
<property role="TrG5h" value="scheduleWithTrace" />
<property role="1EzhhJ" value="false" />
<node concept="37vLTG" id="6Yb9hAqJSaN" role="3clF46">
<property role="TrG5h" value="prevStepWithTrace" />
<node concept="3uibUv" id="6Yb9hAqJSaO" role="1tU5fm">
<ref role="3uigEE" to="unkn:~Single" resolve="Single" />
<node concept="1LlUBW" id="6Yb9hAqJSaP" role="11_B2D">
<node concept="3uibUv" id="6Yb9hAqJSaQ" role="1Lm7xW">
<ref role="3uigEE" to="1yqb:1pPth$lAwc0" resolve="ApplyTemplatesStep" />
</node>
<node concept="3uibUv" id="6Yb9hAqJSaR" role="1Lm7xW">
<ref role="3uigEE" to="yg8f:qubcdtxBiR" resolve="EvaluationTraceExt" />
</node>
</node>
</node>
</node>
<node concept="37vLTG" id="6Yb9hAqJSaS" role="3clF46">
<property role="TrG5h" value="subscribeScheduler" />
<node concept="3uibUv" id="6Yb9hAqJSaT" role="1tU5fm">
<ref role="3uigEE" to="unkn:~Scheduler" resolve="Scheduler" />
</node>
</node>
<node concept="3uibUv" id="6Yb9hAqJSaU" role="3clF45">
<ref role="3uigEE" to="unkn:~Single" resolve="Single" />
<node concept="3uibUv" id="6Yb9hAqJSaV" role="11_B2D">
<ref role="3uigEE" to="1yqb:1pPth$lBNWG" resolve="EvaluateRulesStep" />
</node>
</node>
<node concept="3Tmbuc" id="6Yb9hAqJSaW" role="1B3o_S" />
<node concept="3clFbS" id="6Yb9hAqJSf8" role="3clF47">
<node concept="3clFbF" id="6Yb9hAqJSfd" role="3cqZAp">
<node concept="2OqwBi" id="6Yb9hAqJTeO" role="3clFbG">
<node concept="3nyPlj" id="6Yb9hAqJSfc" role="2Oq$k0">
<ref role="37wK5l" to="1yqb:55Q$YFtHM07" resolve="scheduleWithTrace" />
<node concept="37vLTw" id="6Yb9hAqJSfa" role="37wK5m">
<ref role="3cqZAo" node="6Yb9hAqJSaN" resolve="prevStepWithTrace" />
</node>
<node concept="37vLTw" id="6Yb9hAqJSfb" role="37wK5m">
<ref role="3cqZAo" node="6Yb9hAqJSaS" resolve="subscribeScheduler" />
</node>
</node>
<node concept="liA8E" id="6Yb9hAqJTJO" role="2OqNvi">
<ref role="37wK5l" to="unkn:~Single.map(io.reactivex.functions.Function):io.reactivex.Single" resolve="map" />
<node concept="1bVj0M" id="6Yb9hAqJUtw" role="37wK5m">
<node concept="37vLTG" id="6Yb9hAqJUBz" role="1bW2Oz">
<property role="TrG5h" value="step" />
<node concept="3uibUv" id="6Yb9hAqJUJy" role="1tU5fm">
<ref role="3uigEE" to="1yqb:1pPth$lBNWG" resolve="EvaluateRulesStep" />
</node>
</node>
<node concept="3clFbS" id="6Yb9hAqJUtx" role="1bW5cS">
<node concept="3clFbH" id="6Yb9hAqJV$G" role="3cqZAp" />
<node concept="3SKdUt" id="6Yb9hAqKbak" role="3cqZAp">
<node concept="3SKdUq" id="6Yb9hAqKbam" role="3SKWNk">
<property role="3SKdUp" value="NOP" />
</node>
</node>
<node concept="3clFbH" id="6Yb9hAqJV$L" role="3cqZAp" />
<node concept="3clFbF" id="6Yb9hAqJVMD" role="3cqZAp">
<node concept="37vLTw" id="6Yb9hAqJVMB" role="3clFbG">
<ref role="3cqZAo" node="6Yb9hAqJUBz" resolve="step" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="6Yb9hAqJSf9" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
<node concept="2tJIrI" id="6Yb9hAqJRuL" role="jymVt" />
<node concept="3clFb_" id="78H58oeu6MG" role="jymVt">
<property role="TrG5h" value="createSessionSolver" />
<property role="1EzhhJ" value="false" />
@ -560,6 +659,23 @@
</node>
</node>
</node>
<node concept="2tJIrI" id="6Yb9hAqJXrR" role="jymVt" />
<node concept="3clFb_" id="6kREIVl0T6j" role="jymVt">
<property role="TrG5h" value="getTraceTabComponents" />
<node concept="_YKpA" id="6kREIVl0T6k" role="3clF45">
<node concept="3uibUv" id="6IQb_RxROcP" role="_ZDj9">
<ref role="3uigEE" to="dxuu:~JComponent" resolve="JComponent" />
</node>
</node>
<node concept="3Tm1VV" id="6kREIVl0T6m" role="1B3o_S" />
<node concept="3clFbS" id="6kREIVl0T6n" role="3clF47">
<node concept="3clFbF" id="6kREIVl0T6o" role="3cqZAp">
<node concept="37vLTw" id="6IQb_Rx$Mfp" role="3clFbG">
<ref role="3cqZAo" node="6IQb_RxsBvb" resolve="traceTabComponents" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="78H58oeuecU" role="jymVt" />
<node concept="312cEg" id="7lt0LtQ_XxI" role="jymVt">
<property role="TrG5h" value="errors" />
@ -580,6 +696,22 @@
</node>
</node>
</node>
<node concept="312cEg" id="6IQb_RxsBvb" role="jymVt">
<property role="TrG5h" value="traceTabComponents" />
<node concept="3Tmbuc" id="78H58of7l2T" role="1B3o_S" />
<node concept="_YKpA" id="6IQb_RxsBvd" role="1tU5fm">
<node concept="3uibUv" id="6IQb_RxRQS7" role="_ZDj9">
<ref role="3uigEE" to="dxuu:~JComponent" resolve="JComponent" />
</node>
</node>
<node concept="2ShNRf" id="6IQb_RxsBvf" role="33vP2m">
<node concept="Tc6Ow" id="6IQb_RxsBvg" role="2ShVmc">
<node concept="3uibUv" id="6IQb_RxRP6h" role="HW$YZ">
<ref role="3uigEE" to="dxuu:~JComponent" resolve="JComponent" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="78H58oeubno" role="jymVt" />
<node concept="3Tm1VV" id="78H58oeu6dH" role="1B3o_S" />
<node concept="3uibUv" id="78H58oeu6eG" role="1zkMxy">

View File

@ -1587,27 +1587,14 @@
</node>
<node concept="3clFbJ" id="78H58of6eEx" role="3cqZAp">
<node concept="3clFbS" id="78H58of6eEy" role="3clFbx">
<node concept="3clFbF" id="78H58of6eEz" role="3cqZAp">
<node concept="37vLTI" id="78H58of6eE$" role="3clFbG">
<node concept="3EllGN" id="78H58of6eE_" role="37vLTJ">
<node concept="2OqwBi" id="78H58of6eEA" role="3ElVtu">
<node concept="2GrUjf" id="78H58of6eEB" role="2Oq$k0">
<ref role="2Gs0qQ" node="78H58of6eEM" resolve="m" />
</node>
<node concept="3AY5_j" id="78H58of6eEC" role="2OqNvi" />
</node>
<node concept="37vLTw" id="78H58of6eED" role="3ElQJh">
<ref role="3cqZAo" node="7lt0LtQ_Xx_" resolve="typeNodes" />
</node>
<node concept="3clFbF" id="6Yb9hAqK4a_" role="3cqZAp">
<node concept="2OqwBi" id="6Yb9hAqK4aB" role="3clFbG">
<node concept="37vLTw" id="6Yb9hAqK4aC" role="2Oq$k0">
<ref role="3cqZAo" node="78H58of6dU8" resolve="typeModel" />
</node>
<node concept="2OqwBi" id="78H58of6eEE" role="37vLTx">
<node concept="37vLTw" id="78H58of6eEF" role="2Oq$k0">
<ref role="3cqZAo" node="78H58of6dU8" resolve="typeModel" />
</node>
<node concept="3BYIHo" id="78H58of6eEG" role="2OqNvi">
<node concept="37vLTw" id="78H58of6eEH" role="3BYIHq">
<ref role="3cqZAo" node="78H58of6eEs" resolve="typeNode" />
</node>
<node concept="3BYIHo" id="6Yb9hAqK4aD" role="2OqNvi">
<node concept="37vLTw" id="6Yb9hAqK4aE" role="3BYIHq">
<ref role="3cqZAo" node="78H58of6eEs" resolve="typeNode" />
</node>
</node>
</node>
@ -1628,58 +1615,6 @@
<property role="TrG5h" value="m" />
</node>
</node>
<node concept="3clFbH" id="78H58of6eEN" role="3cqZAp" />
<node concept="2Gpval" id="78H58of6eEO" role="3cqZAp">
<node concept="3clFbS" id="78H58of6eEP" role="2LFqv$">
<node concept="3cpWs8" id="78H58of6eEQ" role="3cqZAp">
<node concept="3cpWsn" id="78H58of6eER" role="3cpWs9">
<property role="TrG5h" value="error" />
<node concept="17QB3L" id="78H58of6eES" role="1tU5fm" />
<node concept="2OqwBi" id="78H58of6eET" role="33vP2m">
<node concept="2GrUjf" id="78H58of6eEU" role="2Oq$k0">
<ref role="2Gs0qQ" node="78H58of6eFa" resolve="m" />
</node>
<node concept="3AV6Ez" id="78H58of6eEV" role="2OqNvi" />
</node>
</node>
</node>
<node concept="3clFbJ" id="78H58of6eEW" role="3cqZAp">
<node concept="3clFbS" id="78H58of6eEX" role="3clFbx">
<node concept="3clFbF" id="78H58of6eEY" role="3cqZAp">
<node concept="37vLTI" id="78H58of6eEZ" role="3clFbG">
<node concept="3EllGN" id="78H58of6eF0" role="37vLTJ">
<node concept="2OqwBi" id="78H58of6eF1" role="3ElVtu">
<node concept="2GrUjf" id="78H58of6eF2" role="2Oq$k0">
<ref role="2Gs0qQ" node="78H58of6eFa" resolve="m" />
</node>
<node concept="3AY5_j" id="78H58of6eF3" role="2OqNvi" />
</node>
<node concept="37vLTw" id="78H58of6eF4" role="3ElQJh">
<ref role="3cqZAo" node="7lt0LtQ_XxI" resolve="errors" />
</node>
</node>
<node concept="37vLTw" id="78H58of6eF5" role="37vLTx">
<ref role="3cqZAo" node="78H58of6eER" resolve="error" />
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="78H58of6eF6" role="3clFbw">
<node concept="10Nm6u" id="78H58of6eF7" role="3uHU7w" />
<node concept="37vLTw" id="78H58of6eF8" role="3uHU7B">
<ref role="3cqZAo" node="78H58of6eER" resolve="error" />
</node>
</node>
</node>
</node>
<node concept="37vLTw" id="78H58of6ig8" role="2GsD0m">
<ref role="3cqZAo" node="7lt0LtQ_XxI" resolve="errors" />
</node>
<node concept="2GrKxI" id="78H58of6eFa" role="2Gsz3X">
<property role="TrG5h" value="m" />
</node>
</node>
<node concept="3clFbH" id="78H58of6eFb" role="3cqZAp" />
<node concept="3clFbF" id="78H58of6eFc" role="3cqZAp">
<node concept="2OqwBi" id="78H58of6eFd" role="3clFbG">
<node concept="37vLTw" id="78H58of6eFe" role="2Oq$k0">