Skip to content

Commit bff5d91

Browse files
author
Alexander Pann
committed
Add sorting support for the option type
1 parent 58fc4af commit bff5d91

File tree

5 files changed

+548
-66
lines changed

5 files changed

+548
-66
lines changed

code/languages/org.iets3.opensource/languages/org.iets3.core.expr.base/models/behavior.mps

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5594,6 +5594,19 @@
55945594
<ref role="ehGHo" to="hm2y:6sdnDbSla17" resolve="Expression" />
55955595
</node>
55965596
</node>
5597+
<node concept="13i0hz" id="4TtBy4cxuTN" role="13h7CS">
5598+
<property role="TrG5h" value="canBeSorted" />
5599+
<ref role="13i0hy" node="7k6A8Wfp3IU" resolve="canBeSorted" />
5600+
<node concept="3Tm1VV" id="4TtBy4cxuTO" role="1B3o_S" />
5601+
<node concept="3clFbS" id="4TtBy4cxuTT" role="3clF47">
5602+
<node concept="3clFbF" id="4TtBy4cxyVC" role="3cqZAp">
5603+
<node concept="3clFbT" id="4TtBy4cxyVB" role="3clFbG">
5604+
<property role="3clFbU" value="true" />
5605+
</node>
5606+
</node>
5607+
</node>
5608+
<node concept="10P_77" id="4TtBy4cxuTU" role="3clF45" />
5609+
</node>
55975610
</node>
55985611
<node concept="13h7C7" id="UN2ftLUxnR">
55995612
<property role="3GE5qa" value="option" />

code/languages/org.iets3.opensource/languages/org.iets3.core.expr.base/models/plugin.mps

Lines changed: 69 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
<use id="63650c59-16c8-498a-99c8-005c7ee9515d" name="jetbrains.mps.lang.access" version="-1" />
1616
<use id="f2801650-65d5-424e-bb1b-463a8781b786" name="jetbrains.mps.baseLanguage.javadoc" version="2" />
1717
<use id="c7d5b9dd-a05f-4be2-bc73-f2e16994cc67" name="jetbrains.mps.baseLanguage.lightweightdsl" version="1" />
18+
<use id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core" version="2" />
1819
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
1920
</languages>
2021
<imports>
@@ -29,8 +30,6 @@
2930
<import index="iwsx" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.openapi.fileEditor(MPS.IDEA/)" />
3031
<import index="7lvn" ref="r:4e6037e6-9135-44f8-9403-04d79fc40f4a(jetbrains.mps.ide.editor.util)" />
3132
<import index="exr9" ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224/java:jetbrains.mps.nodeEditor(MPS.Editor/)" />
32-
<import index="w1kc" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel(MPS.Core/)" />
33-
<import index="4nm9" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.openapi.project(MPS.IDEA/)" />
3433
<import index="f4zo" ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224/java:jetbrains.mps.openapi.editor.cells(MPS.Editor/)" />
3534
<import index="5ueo" ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224/java:jetbrains.mps.editor.runtime.style(MPS.Editor/)" />
3635
<import index="g51k" ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224/java:jetbrains.mps.nodeEditor.cells(MPS.Editor/)" />
@@ -40,16 +39,15 @@
4039
<import index="hox0" ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224/java:jetbrains.mps.openapi.editor.style(MPS.Editor/)" />
4140
<import index="qq03" ref="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61/java:jetbrains.mps.ide.actions(MPS.Platform/)" />
4241
<import index="z1c3" ref="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61/java:jetbrains.mps.project(MPS.Platform/)" />
43-
<import index="lui2" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.module(MPS.OpenAPI/)" />
4442
<import index="z1c4" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.project(MPS.Core/)" />
4543
<import index="xfg9" ref="r:ac28053f-2041-47f6-806b-ecfaca05a64a(org.iets3.core.expr.base.runtime.runtime)" />
4644
<import index="ppzb" ref="r:5db517a0-f62d-4841-a421-11bb7269799d(org.iets3.core.expr.base.shared.runtime)" />
4745
<import index="90d" ref="r:421d64ed-8024-497f-aeab-8bddeb389dd2(jetbrains.mps.lang.extension.methods)" />
48-
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" implicit="true" />
49-
<import index="tpcu" ref="r:00000000-0000-4000-0000-011c89590282(jetbrains.mps.lang.core.behavior)" implicit="true" />
50-
<import index="guwi" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.io(JDK/)" implicit="true" />
51-
<import index="tprs" ref="r:00000000-0000-4000-0000-011c895904a4(jetbrains.mps.ide.actions)" implicit="true" />
52-
<import index="c17a" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.language(MPS.OpenAPI/)" implicit="true" />
46+
<import index="tpcu" ref="r:00000000-0000-4000-0000-011c89590282(jetbrains.mps.lang.core.behavior)" />
47+
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" />
48+
<import index="c17a" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.language(MPS.OpenAPI/)" />
49+
<import index="guwi" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.io(JDK/)" />
50+
<import index="tprs" ref="r:00000000-0000-4000-0000-011c895904a4(jetbrains.mps.ide.actions)" />
5351
</imports>
5452
<registry>
5553
<language id="28f9e497-3b42-4291-aeba-0a1039153ab1" name="jetbrains.mps.lang.plugin">
@@ -548,6 +546,9 @@
548546
<node concept="3uibUv" id="6MNhNeUh6na" role="EKbjA">
549547
<ref role="3uigEE" to="2ahs:6MNhNeUeM9i" resolve="IStopAndReturn" />
550548
</node>
549+
<node concept="3uibUv" id="4TtBy4czRM6" role="EKbjA">
550+
<ref role="3uigEE" to="wyt6:~Comparable" resolve="Comparable" />
551+
</node>
551552
<node concept="3Tm1VV" id="UN2ftLWgA9" role="1B3o_S" />
552553
<node concept="3clFb_" id="UN2ftLXFXP" role="jymVt">
553554
<property role="1EzhhJ" value="false" />
@@ -671,13 +672,73 @@
671672
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
672673
</node>
673674
</node>
675+
<node concept="2tJIrI" id="4TtBy4czSoi" role="jymVt" />
674676
<node concept="3UR2Jj" id="3iq6R$ZyJbu" role="lGtFl">
675677
<node concept="TZ5HA" id="3iq6R$ZyJbv" role="TZ5H$">
676678
<node concept="1dT_AC" id="3iq6R$ZyJbw" role="1dT_Ay">
677679
<property role="1dT_AB" value="Represents 'none' value of an optional type." />
678680
</node>
679681
</node>
680682
</node>
683+
<node concept="3clFb_" id="4TtBy4czRUR" role="jymVt">
684+
<property role="TrG5h" value="compareTo" />
685+
<node concept="3Tm1VV" id="4TtBy4czRUS" role="1B3o_S" />
686+
<node concept="10Oyi0" id="4TtBy4czRUU" role="3clF45" />
687+
<node concept="37vLTG" id="4TtBy4czRUV" role="3clF46">
688+
<property role="TrG5h" value="object" />
689+
<node concept="3uibUv" id="4TtBy4czRUX" role="1tU5fm">
690+
<ref role="3uigEE" to="wyt6:~Object" />
691+
</node>
692+
</node>
693+
<node concept="3clFbS" id="4TtBy4czRUY" role="3clF47">
694+
<node concept="3SKdUt" id="29KNCeyMCRt" role="3cqZAp">
695+
<node concept="1PaTwC" id="29KNCeyMCRu" role="1aUNEU">
696+
<node concept="3oM_SD" id="29KNCeyMD1j" role="1PaTwD">
697+
<property role="3oM_SC" value="NoneValues" />
698+
</node>
699+
<node concept="3oM_SD" id="29KNCeyMD1F" role="1PaTwD">
700+
<property role="3oM_SC" value="should" />
701+
</node>
702+
<node concept="3oM_SD" id="29KNCeyMD24" role="1PaTwD">
703+
<property role="3oM_SC" value="be" />
704+
</node>
705+
<node concept="3oM_SD" id="29KNCeyMD2u" role="1PaTwD">
706+
<property role="3oM_SC" value="the" />
707+
</node>
708+
<node concept="3oM_SD" id="29KNCeyMD2T" role="1PaTwD">
709+
<property role="3oM_SC" value="lowest" />
710+
</node>
711+
<node concept="3oM_SD" id="29KNCeyMD3l" role="1PaTwD">
712+
<property role="3oM_SC" value="value" />
713+
</node>
714+
<node concept="3oM_SD" id="29KNCeyMD3s" role="1PaTwD">
715+
<property role="3oM_SC" value="or" />
716+
</node>
717+
<node concept="3oM_SD" id="29KNCeyMD3$" role="1PaTwD">
718+
<property role="3oM_SC" value="filtered" />
719+
</node>
720+
<node concept="3oM_SD" id="29KNCeyMD43" role="1PaTwD">
721+
<property role="3oM_SC" value="from" />
722+
</node>
723+
<node concept="3oM_SD" id="29KNCeyMD4z" role="1PaTwD">
724+
<property role="3oM_SC" value="collections" />
725+
</node>
726+
<node concept="3oM_SD" id="29KNCeyMD54" role="1PaTwD">
727+
<property role="3oM_SC" value="anyway" />
728+
</node>
729+
</node>
730+
</node>
731+
<node concept="3clFbF" id="4TtBy4czRV1" role="3cqZAp">
732+
<node concept="3cmrfG" id="4TtBy4czRV0" role="3clFbG">
733+
<property role="3cmrfH" value="-1" />
734+
</node>
735+
</node>
736+
</node>
737+
<node concept="2AHcQZ" id="4TtBy4czRUZ" role="2AJF6D">
738+
<ref role="2AI5Lk" to="wyt6:~Override" />
739+
</node>
740+
</node>
741+
<node concept="2tJIrI" id="29KNCeybCV7" role="jymVt" />
681742
</node>
682743
<node concept="312cEu" id="12WRc298rqY">
683744
<property role="TrG5h" value="SpecificErrorValue" />

0 commit comments

Comments
 (0)