Skip to content

Commit 7000dd1

Browse files
authored
Merge pull request #1520 from IETS3/merge/mps20241
Merge maintenance/mps20241 into maintenance/mps20251
2 parents 442786b + d1413bb commit 7000dd1

File tree

5 files changed

+184
-5
lines changed

5 files changed

+184
-5
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ The project does _not_ follow Semantic Versioning and the changes are documented
1414

1515
### Fixed
1616
- A bug was fixed that caused the editor of NumberLiteral to break if a property macro was used for its value.
17+
- Added missing support for IndexExpr for the operations findFirst and forEach.
1718

1819
## October 2025
1920

code/languages/org.iets3.opensource/languages/org.iets3.core.expr.collections/models/structure.mps

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -786,6 +786,9 @@
786786
<node concept="PrWs8" id="4qVjx3kg95E" role="PzmwI">
787787
<ref role="PrY4T" to="hm2y:6KxoTHgLv_I" resolve="IMayHaveEffect" />
788788
</node>
789+
<node concept="PrWs8" id="XJW33sH4IL" role="PzmwI">
790+
<ref role="PrY4T" node="7SZA7Udl6Fm" resolve="IProvideIndex" />
791+
</node>
789792
</node>
790793
<node concept="1TIwiD" id="2dOqIOtJZ98">
791794
<property role="EcuMT" value="2554784455264825928" />
@@ -920,6 +923,9 @@
920923
<node concept="PrWs8" id="1mDdTH3UxB" role="PzmwI">
921924
<ref role="PrY4T" to="hm2y:ORfz$DS6_k" resolve="IMayAllowEffect" />
922925
</node>
926+
<node concept="PrWs8" id="XJW33sGYin" role="PzmwI">
927+
<ref role="PrY4T" node="7SZA7Udl6Fm" resolve="IProvideIndex" />
928+
</node>
923929
</node>
924930
<node concept="1TIwiD" id="k9boAtSSt_">
925931
<property role="3GE5qa" value="list" />

code/languages/org.iets3.opensource/solutions/org.iets3.core.expr.collections.interpreter/models/plugin.mps

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7253,8 +7253,53 @@
72537253
</node>
72547254
</node>
72557255
</node>
7256+
<node concept="3cpWs8" id="XJW33sMQiE" role="3cqZAp">
7257+
<node concept="3cpWsn" id="XJW33sMQiH" role="3cpWs9">
7258+
<property role="TrG5h" value="index" />
7259+
<node concept="10Oyi0" id="XJW33sMQiC" role="1tU5fm" />
7260+
<node concept="3cmrfG" id="XJW33sMQ$N" role="33vP2m">
7261+
<property role="3cmrfH" value="0" />
7262+
</node>
7263+
</node>
7264+
</node>
7265+
<node concept="3cpWs8" id="XJW33sMR8S" role="3cqZAp">
7266+
<node concept="3cpWsn" id="XJW33sMR8T" role="3cpWs9">
7267+
<property role="TrG5h" value="oldRnd" />
7268+
<node concept="3uibUv" id="XJW33sMR8U" role="1tU5fm">
7269+
<ref role="3uigEE" to="wyt6:~Integer" resolve="Integer" />
7270+
</node>
7271+
<node concept="0kSF2" id="XJW33sMSpW" role="33vP2m">
7272+
<node concept="3uibUv" id="XJW33sMSpZ" role="0kSFW">
7273+
<ref role="3uigEE" to="wyt6:~Integer" resolve="Integer" />
7274+
</node>
7275+
<node concept="3EllGN" id="XJW33sMSeI" role="0kSFX">
7276+
<node concept="10M0yZ" id="XJW33sMSkd" role="3ElVtu">
7277+
<ref role="3cqZAo" to="y6bu:7SZA7Udlbqp" resolve="RND" />
7278+
<ref role="1PxDUh" to="y6bu:7SZA7Udlb7n" resolve="CollectionEnvConstants" />
7279+
</node>
7280+
<node concept="TvHiN" id="XJW33sMRr6" role="3ElQJh" />
7281+
</node>
7282+
</node>
7283+
</node>
7284+
</node>
72567285
<node concept="2$JKZl" id="1mDdTH42xD" role="3cqZAp">
72577286
<node concept="3clFbS" id="1mDdTH42xE" role="2LFqv$">
7287+
<node concept="3clFbF" id="XJW33sMSxK" role="3cqZAp">
7288+
<node concept="37vLTI" id="XJW33sMSKH" role="3clFbG">
7289+
<node concept="3uNrnE" id="XJW33sMUuE" role="37vLTx">
7290+
<node concept="37vLTw" id="XJW33sMUuG" role="2$L3a6">
7291+
<ref role="3cqZAo" node="XJW33sMQiH" resolve="index" />
7292+
</node>
7293+
</node>
7294+
<node concept="3EllGN" id="XJW33sMSxM" role="37vLTJ">
7295+
<node concept="10M0yZ" id="XJW33sMSxN" role="3ElVtu">
7296+
<ref role="3cqZAo" to="y6bu:7SZA7Udlbqp" resolve="RND" />
7297+
<ref role="1PxDUh" to="y6bu:7SZA7Udlb7n" resolve="CollectionEnvConstants" />
7298+
</node>
7299+
<node concept="TvHiN" id="XJW33sMSxO" role="3ElQJh" />
7300+
</node>
7301+
</node>
7302+
</node>
72587303
<node concept="3cpWs8" id="1mDdTH42xO" role="3cqZAp">
72597304
<node concept="3cpWsn" id="1mDdTH42xP" role="3cpWs9">
72607305
<property role="TrG5h" value="next" />
@@ -7344,6 +7389,20 @@
73447389
</node>
73457390
</node>
73467391
</node>
7392+
<node concept="3clFbF" id="XJW33sMUYT" role="3cqZAp">
7393+
<node concept="37vLTI" id="XJW33sMVmK" role="3clFbG">
7394+
<node concept="37vLTw" id="XJW33sMVpH" role="37vLTx">
7395+
<ref role="3cqZAo" node="XJW33sMR8T" resolve="oldRnd" />
7396+
</node>
7397+
<node concept="3EllGN" id="XJW33sMUYV" role="37vLTJ">
7398+
<node concept="10M0yZ" id="XJW33sMUYW" role="3ElVtu">
7399+
<ref role="3cqZAo" to="y6bu:7SZA7Udlbqp" resolve="RND" />
7400+
<ref role="1PxDUh" to="y6bu:7SZA7Udlb7n" resolve="CollectionEnvConstants" />
7401+
</node>
7402+
<node concept="TvHiN" id="XJW33sMUYX" role="3ElQJh" />
7403+
</node>
7404+
</node>
7405+
</node>
73477406
<node concept="3cpWs6" id="1mDdTH42yu" role="3cqZAp">
73487407
<node concept="2ShNRf" id="1mDdTH4g8p" role="3cqZAk">
73497408
<node concept="HV5vD" id="1mDdTH4gmj" role="2ShVmc">

code/languages/org.iets3.opensource/tests/test.in.expr.os/models/[email protected]

Lines changed: 118 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,9 @@
66
<use id="f61473f9-130f-42f6-b98d-6c438812c2f6" name="jetbrains.mps.baseLanguage.unitTest" version="1" />
77
<use id="d4280a54-f6df-4383-aa41-d1b2bffa7eb1" name="com.mbeddr.core.base" version="6" />
88
<use id="92d2ea16-5a42-4fdf-a676-c7604efe3504" name="de.slisson.mps.richtext" version="0" />
9-
<use id="5186c6ce-428c-4f09-a9df-73d9e86c27d3" name="org.iets3.core.expr.typetags" version="1" />
10-
<use id="be679007-4312-4db1-9ac0-ab7dfbe66a74" name="org.iets3.core.expr.typetags.units.quantity" version="0" />
11-
<use id="cb91a38e-738a-4811-a96d-448d08f526fa" name="org.iets3.core.expr.typetags.units" version="1" />
12-
<devkit ref="ec967770-4707-442f-baaf-a8b7bb554717(org.iets3.core.expr.genall.core.devkit)" />
9+
<use id="fbba5118-5fc6-49ff-9c3b-0b4469830440" name="org.iets3.core.expr.mutable" version="8" />
1310
<devkit ref="c4e521ab-b605-4ef9-a7c3-68075da058f0(org.iets3.core.expr.core.devkit)" />
11+
<devkit ref="b2a65b84-7ec9-404f-8602-f16394bb1d98(org.iets3.core.expr.stateful.devkit)" />
1412
</languages>
1513
<imports />
1614
<registry>
@@ -99,6 +97,7 @@
9997
<child id="531692237848499024" name="selectorList" index="3LEy0l" />
10098
</concept>
10199
<concept id="4618483580248255217" name="org.iets3.core.expr.collections.structure.UnpackOptionsOp" flags="ng" index="3LGWMD" />
100+
<concept id="9097157441620016186" name="org.iets3.core.expr.collections.structure.ForeachOp" flags="ng" index="3NG6h4" />
102101
<concept id="7740953487940081584" name="org.iets3.core.expr.collections.structure.MinOp" flags="ng" index="1W43ev" />
103102
<concept id="4931785860342338320" name="org.iets3.core.expr.collections.structure.FoldOp" flags="ng" index="1XzICc">
104103
<child id="4931785860342371144" name="combiner" index="1YsmDk" />
@@ -292,6 +291,9 @@
292291
<child id="4052432714772608243" name="text" index="1w35rA" />
293292
</concept>
294293
</language>
294+
<language id="fbba5118-5fc6-49ff-9c3b-0b4469830440" name="org.iets3.core.expr.mutable">
295+
<concept id="3795092733479561024" name="org.iets3.core.expr.mutable.structure.NowExpression" flags="ng" index="3C7svV" />
296+
</language>
295297
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
296298
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
297299
<child id="5169995583184591170" name="smodelAttribute" index="lGtFl" />
@@ -306,6 +308,7 @@
306308
</concept>
307309
</language>
308310
<language id="9464fa06-5ab9-409b-9274-64ab29588457" name="org.iets3.core.expr.lambda">
311+
<concept id="5096753237482793710" name="org.iets3.core.expr.lambda.structure.ReadModifyEffectTag" flags="ng" index="2lgajY" />
309312
<concept id="4790956042240983401" name="org.iets3.core.expr.lambda.structure.BlockExpression" flags="ng" index="1aduha">
310313
<child id="4790956042240983402" name="expressions" index="1aduh9" />
311314
</concept>
@@ -324,6 +327,7 @@
324327
<child id="4790956042240522406" name="args" index="1afhQ5" />
325328
</concept>
326329
<concept id="4790956042240100911" name="org.iets3.core.expr.lambda.structure.IFunctionLike" flags="ngI" index="1ahQWc">
330+
<child id="3880322347437217307" name="effect" index="28QfE6" />
327331
<child id="4790956042240100927" name="args" index="1ahQWs" />
328332
<child id="4790956042240100950" name="body" index="1ahQXP" />
329333
</concept>
@@ -20416,6 +20420,17 @@
2041620420
</node>
2041720421
</node>
2041820422
</node>
20423+
<node concept="1aga60" id="3GdqffBR5lX" role="_iOnB">
20424+
<property role="TrG5h" value="fakeChange" />
20425+
<node concept="1aduha" id="3GdqffBR5n4" role="1ahQXP">
20426+
<node concept="3C7svV" id="1yEri41gibc" role="1aduh9" />
20427+
</node>
20428+
<node concept="2lgajY" id="4qVjx3k0RYS" role="28QfE6" />
20429+
<node concept="1ahQXy" id="3HYRP_wMtRW" role="1ahQWs">
20430+
<property role="TrG5h" value="index" />
20431+
<node concept="mLuIC" id="3HYRP_wMtX0" role="3ix9CU" />
20432+
</node>
20433+
</node>
2041920434
<node concept="_ixoA" id="1e59C2QE68d" role="_iOnB" />
2042020435
<node concept="2zPypq" id="3S$dVIhq7kc" role="_iOnB">
2042120436
<property role="TrG5h" value="indexCollection" />
@@ -20550,6 +20565,27 @@
2055020565
</node>
2055120566
</node>
2055220567
</node>
20568+
<node concept="_fkuZ" id="XJW33sLrtX" role="_fkp5">
20569+
<node concept="_fku$" id="XJW33sLrtY" role="_fkur" />
20570+
<node concept="1QScDb" id="XJW33sLruC" role="_fkuY">
20571+
<node concept="1HmgMX" id="XJW33sLrGM" role="1QScD9">
20572+
<node concept="3izI60" id="XJW33sLrGN" role="2lDidJ">
20573+
<node concept="30cPrO" id="XJW33sLsge" role="2lDidJ">
20574+
<node concept="30bXRB" id="XJW33sLstk" role="30dEs_">
20575+
<property role="30bXRw" value="1" />
20576+
</node>
20577+
<node concept="2GTG47" id="XJW33sLs4t" role="30dEsF" />
20578+
</node>
20579+
</node>
20580+
</node>
20581+
<node concept="_emDc" id="XJW33sLruf" role="2lDidJ">
20582+
<ref role="_emDf" node="3S$dVIhq7kc" resolve="indexCollection" />
20583+
</node>
20584+
</node>
20585+
<node concept="30bXRB" id="XJW33sLsCL" role="_fkuS">
20586+
<property role="30bXRw" value="2" />
20587+
</node>
20588+
</node>
2055320589
<node concept="3dYjL0" id="3S$dVIhHJrO" role="_fkp5" />
2055420590
<node concept="_fkuZ" id="3S$dVIhHJsZ" role="_fkp5">
2055520591
<node concept="_fku$" id="3S$dVIhHJt0" role="_fkur" />
@@ -20630,6 +20666,63 @@
2063020666
</node>
2063120667
</node>
2063220668
</node>
20669+
<node concept="_fkuZ" id="XJW33sLsD0" role="_fkp5">
20670+
<node concept="_fku$" id="XJW33sLsD1" role="_fkur" />
20671+
<node concept="1QScDb" id="XJW33sLsEk" role="_fkuY">
20672+
<node concept="1HmgMX" id="XJW33sLulK" role="1QScD9">
20673+
<node concept="3izI60" id="XJW33sLuxk" role="2lDidJ">
20674+
<node concept="30cPrO" id="XJW33sLuTr" role="2lDidJ">
20675+
<node concept="2GTG47" id="XJW33sLuGf" role="30dEsF" />
20676+
<node concept="30bXRB" id="XJW33sLv4p" role="30dEs_">
20677+
<property role="30bXRw" value="1" />
20678+
</node>
20679+
</node>
20680+
</node>
20681+
</node>
20682+
<node concept="_emDc" id="XJW33sLsDr" role="2lDidJ">
20683+
<ref role="_emDf" node="3S$dVIhF_gw" resolve="indexList" />
20684+
</node>
20685+
</node>
20686+
<node concept="30bXRB" id="XJW33sLtNR" role="_fkuS">
20687+
<property role="30bXRw" value="2" />
20688+
</node>
20689+
</node>
20690+
<node concept="_fkuZ" id="3HYRP_wF_np" role="_fkp5">
20691+
<node concept="_fku$" id="3HYRP_wF_nq" role="_fkur" />
20692+
<node concept="1QScDb" id="1yEri41h53G" role="_fkuY">
20693+
<node concept="3NG6h4" id="1yEri41he42" role="1QScD9">
20694+
<node concept="3izI60" id="1yEri41he43" role="2lDidJ">
20695+
<node concept="1af_rf" id="1yEri41hmNi" role="2lDidJ">
20696+
<property role="0Rz4W" value="-1258774389" />
20697+
<ref role="1afhQb" node="3GdqffBR5lX" resolve="fakeChange" />
20698+
<node concept="2GTG47" id="3HYRP_wPr9w" role="1afhQ5" />
20699+
</node>
20700+
</node>
20701+
</node>
20702+
<node concept="3iBYfx" id="1yEri41h50e" role="2lDidJ">
20703+
<node concept="30bXRB" id="1yEri41h50m" role="3iBYfI">
20704+
<property role="30bXRw" value="1" />
20705+
</node>
20706+
<node concept="30bXRB" id="1yEri41h51b" role="3iBYfI">
20707+
<property role="30bXRw" value="2" />
20708+
</node>
20709+
<node concept="30bXRB" id="1yEri41h52l" role="3iBYfI">
20710+
<property role="30bXRw" value="3" />
20711+
</node>
20712+
</node>
20713+
</node>
20714+
<node concept="3iBYfx" id="3HYRP_wPrxy" role="_fkuS">
20715+
<node concept="30bXRB" id="3HYRP_wPrxz" role="3iBYfI">
20716+
<property role="30bXRw" value="1" />
20717+
</node>
20718+
<node concept="30bXRB" id="3HYRP_wPrx$" role="3iBYfI">
20719+
<property role="30bXRw" value="2" />
20720+
</node>
20721+
<node concept="30bXRB" id="3HYRP_wPrx_" role="3iBYfI">
20722+
<property role="30bXRw" value="3" />
20723+
</node>
20724+
</node>
20725+
</node>
2063320726
<node concept="3dYjL0" id="3S$dVIhJYfV" role="_fkp5" />
2063420727
<node concept="_fkuZ" id="3S$dVIhJYio" role="_fkp5">
2063520728
<node concept="_fku$" id="3S$dVIhJYip" role="_fkur" />
@@ -20710,6 +20803,27 @@
2071020803
</node>
2071120804
</node>
2071220805
</node>
20806+
<node concept="_fkuZ" id="XJW33sLtO6" role="_fkp5">
20807+
<node concept="_fku$" id="XJW33sLtO7" role="_fkur" />
20808+
<node concept="1QScDb" id="XJW33sLtPf" role="_fkuY">
20809+
<node concept="1HmgMX" id="XJW33sLu62" role="1QScD9">
20810+
<node concept="3izI60" id="XJW33sLu63" role="2lDidJ">
20811+
<node concept="30cPrO" id="XJW33sLvC$" role="2lDidJ">
20812+
<node concept="30bXRB" id="XJW33sLvOh" role="30dEs_">
20813+
<property role="30bXRw" value="1" />
20814+
</node>
20815+
<node concept="2GTG47" id="XJW33sLvsa" role="30dEsF" />
20816+
</node>
20817+
</node>
20818+
</node>
20819+
<node concept="_emDc" id="XJW33sLtOm" role="2lDidJ">
20820+
<ref role="_emDf" node="3S$dVIhJXO6" resolve="indexSet" />
20821+
</node>
20822+
</node>
20823+
<node concept="30bXRB" id="XJW33sLw0m" role="_fkuS">
20824+
<property role="30bXRw" value="2" />
20825+
</node>
20826+
</node>
2071320827
</node>
2071420828
<node concept="_ixoA" id="3S$dVIhL6H6" role="_iOnB" />
2071520829
<node concept="_ixoA" id="2ufoZQJ2tm0" role="_iOnB" />

code/languages/org.iets3.opensource/tests/test.in.expr.os/test.in.expr.os.msd

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@
102102
<language slang="l:2c8e8304-72f7-4e6a-853a-ac0616a47569:org.iets3.core.expr.typetags.lib" version="0" />
103103
<language slang="l:7ee265bd-5986-4709-86ed-2c6daa33cd8c:org.iets3.core.expr.typetags.physunits" version="0" />
104104
<language slang="l:cb91a38e-738a-4811-a96d-448d08f526fa:org.iets3.core.expr.typetags.units" version="1" />
105-
<language slang="l:be679007-4312-4db1-9ac0-ab7dfbe66a74:org.iets3.core.expr.typetags.units.quantity" version="0" />
106105
<language slang="l:8bb1251e-eae5-47ab-9843-33adfae8edaa:org.iets3.core.expr.util" version="7" />
107106
</languageVersions>
108107
<dependencyVersions>

0 commit comments

Comments
 (0)