Skip to content

Commit 5574954

Browse files
author
Alexander Pann
authored
Merge pull request #1138 from IETS3/bugfix/units_of_digital_information
2 parents c43722f + 65ae9f3 commit 5574954

File tree

11 files changed

+2105
-404
lines changed

11 files changed

+2105
-404
lines changed

CHANGELOG.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,15 @@ The project does _not_ follow Semantic Versioning and the changes are documented
1212
- Hexadecimal attributes are now better visible in the diff view.
1313
- Negative decimal values are now correctly converted to hexadecimal values.
1414

15-
### Changes
15+
### Changed
1616

1717
- It is now possible to customize where hex values are enabled. With PrimitiveTypeMapper#filterHexadecimalSupportingNodes you can now enable/disable them for specific nodes.
18+
- The physical units B and b were renamed to byte and bit to avoid confusion.
19+
- Breaking change: The units of digital information were split into 3 different libraries: UnitsOfInformationIEC, UnitsOfInformationJEDEC, UnitsOfInformationMetric. They are still considered part of the derived units.
20+
21+
### Added
22+
23+
- Physical units now also support metric scaling for only the positive and negative prefixes. Scaling can also be overwritten for units by overwritten `IUnitLangConfig#getOverwrittenScaling` for the extension point `PhysUnitLangConfig`.
1824

1925
## October 2024
2026

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

Lines changed: 1452 additions & 145 deletions
Large diffs are not rendered by default.

code/languages/org.iets3.opensource/languages/org.iets3.core.expr.typetags.physunits/models/org.iets3.core.expr.typetags.physunits.editor.mps

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2465,15 +2465,14 @@
24652465
<node concept="liA8E" id="4dsOSthqJzd" role="2OqNvi">
24662466
<ref role="37wK5l" to="wyt6:~StringBuilder.append(java.lang.String)" resolve="append" />
24672467
<node concept="2OqwBi" id="4dsOSthr4cu" role="37wK5m">
2468-
<node concept="2OqwBi" id="4dsOSthr2SI" role="2Oq$k0">
2469-
<node concept="2ZBlsa" id="4dsOSthr0_4" role="2Oq$k0" />
2470-
<node concept="3TrcHB" id="4dsOSthr3KS" role="2OqNvi">
2471-
<ref role="3TsBF5" to="i3ya:2hbaSyABN4s" resolve="scaling" />
2472-
</node>
2473-
</node>
24742468
<node concept="liA8E" id="4dsOSthr4DB" role="2OqNvi">
24752469
<ref role="37wK5l" to="c17a:~SEnumerationLiteral.getPresentation()" resolve="getPresentation" />
24762470
</node>
2471+
<node concept="2YIFZM" id="4zqoYUCgk0L" role="2Oq$k0">
2472+
<ref role="37wK5l" to="rppw:4zqoYUCdlDz" resolve="getScaling" />
2473+
<ref role="1Pybhc" to="rppw:4jkbLB5RJZL" resolve="UnitConversionUtil" />
2474+
<node concept="2ZBlsa" id="4zqoYUCjkkJ" role="37wK5m" />
2475+
</node>
24772476
</node>
24782477
</node>
24792478
</node>

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

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<import index="hm2y" ref="r:66e07cb4-a4b0-4bf3-a36d-5e9ed1ff1bd3(org.iets3.core.expr.base.structure)" />
2020
<import index="pbu6" ref="r:83e946de-2a7f-4a4c-b3c9-4f671aa7f2db(org.iets3.core.expr.base.behavior)" />
2121
<import index="3o3z" ref="ecfb9949-7433-4db5-85de-0f84d172e4ce/java:com.google.common.collect(de.q60.mps.collections.libs/)" />
22-
<import index="rppw" ref="r:720d563d-1633-46b3-a98e-08d2fde4c4a8(org.iets3.core.expr.typetags.quantities.behavior)" />
22+
<import index="rppw" ref="r:720d563d-1633-46b3-a98e-08d2fde4c4a8(org.iets3.core.expr.typetags.physunits.behavior)" />
2323
<import index="i3ya" ref="r:4f64e2f0-6a4e-4db3-b3bf-7977f44949b6(org.iets3.core.expr.typetags.physunits.structure)" />
2424
<import index="rxpb" ref="r:31fd8edf-66c5-44d7-84a8-5940badb4d17(org.iets3.core.expr.base.interpreter.plugin)" />
2525
<import index="km5y" ref="r:78e88ebb-2d27-4b89-867f-623c50619338(org.iets3.core.expr.simpleTypes.interpreter.plugin)" />
@@ -314,6 +314,9 @@
314314
<child id="1144104376918" name="parameter" index="1xVPHs" />
315315
</concept>
316316
<concept id="1179409122411" name="jetbrains.mps.lang.smodel.structure.Node_ConceptMethodCall" flags="nn" index="2qgKlT" />
317+
<concept id="7400021826771268254" name="jetbrains.mps.lang.smodel.structure.SNodePointerType" flags="ig" index="2sp9CU">
318+
<reference id="7400021826771268269" name="concept" index="2sp9C9" />
319+
</concept>
317320
<concept id="2396822768958367367" name="jetbrains.mps.lang.smodel.structure.AbstractTypeCastExpression" flags="nn" index="$5XWr">
318321
<child id="6733348108486823193" name="leftExpression" index="1m5AlR" />
319322
<child id="3906496115198199033" name="conceptArgument" index="3oSUPX" />
@@ -330,6 +333,9 @@
330333
<child id="1145404616321" name="leftExpression" index="2JrQYb" />
331334
</concept>
332335
<concept id="1171407110247" name="jetbrains.mps.lang.smodel.structure.Node_GetAncestorOperation" flags="nn" index="2Xjw5R" />
336+
<concept id="1240170042401" name="jetbrains.mps.lang.smodel.structure.SEnumerationMemberType" flags="in" index="2ZThk1">
337+
<reference id="1240170836027" name="enum" index="2ZWj4r" />
338+
</concept>
333339
<concept id="1139621453865" name="jetbrains.mps.lang.smodel.structure.Node_IsInstanceOfOperation" flags="nn" index="1mIQ4w">
334340
<child id="1177027386292" name="conceptArgument" index="cj9EA" />
335341
</concept>
@@ -388,6 +394,14 @@
388394
</concept>
389395
<concept id="1162935959151" name="jetbrains.mps.baseLanguage.collections.structure.GetSizeOperation" flags="nn" index="34oBXx" />
390396
<concept id="1178286324487" name="jetbrains.mps.baseLanguage.collections.structure.SortDirection" flags="nn" index="1nlBCl" />
397+
<concept id="1197683403723" name="jetbrains.mps.baseLanguage.collections.structure.MapType" flags="in" index="3rvAFt">
398+
<child id="1197683466920" name="keyType" index="3rvQeY" />
399+
<child id="1197683475734" name="valueType" index="3rvSg0" />
400+
</concept>
401+
<concept id="1197686869805" name="jetbrains.mps.baseLanguage.collections.structure.HashMapCreator" flags="nn" index="3rGOSV">
402+
<child id="1197687026896" name="keyType" index="3rHrn6" />
403+
<child id="1197687035757" name="valueType" index="3rHtpV" />
404+
</concept>
391405
<concept id="1165525191778" name="jetbrains.mps.baseLanguage.collections.structure.GetFirstOperation" flags="nn" index="1uHKPH" />
392406
<concept id="1240687580870" name="jetbrains.mps.baseLanguage.collections.structure.JoinOperation" flags="nn" index="3uJxvA">
393407
<child id="1240687658305" name="delimiter" index="3uJOhx" />
@@ -1071,6 +1085,34 @@
10711085
</node>
10721086
</node>
10731087
</node>
1088+
<node concept="2tJIrI" id="4zqoYUC7Ogg" role="jymVt" />
1089+
<node concept="3clFb_" id="4zqoYUC7SCk" role="jymVt">
1090+
<property role="TrG5h" value="getOverwrittenScaling" />
1091+
<node concept="3clFbS" id="4zqoYUC7SCn" role="3clF47">
1092+
<node concept="3clFbF" id="4zqoYUC7Tyx" role="3cqZAp">
1093+
<node concept="2ShNRf" id="4zqoYUC7Tyv" role="3clFbG">
1094+
<node concept="3rGOSV" id="4zqoYUC82TL" role="2ShVmc">
1095+
<node concept="2sp9CU" id="4zqoYUCkRrG" role="3rHrn6">
1096+
<ref role="2sp9C9" to="i3ya:7eOyx9r3jsZ" resolve="Unit" />
1097+
</node>
1098+
<node concept="2ZThk1" id="4zqoYUC83yy" role="3rHtpV">
1099+
<ref role="2ZWj4r" to="i3ya:2hbaSyABMZL" resolve="UnitScalingType" />
1100+
</node>
1101+
</node>
1102+
</node>
1103+
</node>
1104+
</node>
1105+
<node concept="3Tm1VV" id="4zqoYUC7SCo" role="1B3o_S" />
1106+
<node concept="3rvAFt" id="4zqoYUC7Sjl" role="3clF45">
1107+
<node concept="2sp9CU" id="4zqoYUCkRhk" role="3rvQeY">
1108+
<ref role="2sp9C9" to="i3ya:7eOyx9r3jsZ" resolve="Unit" />
1109+
</node>
1110+
<node concept="2ZThk1" id="4zqoYUC7SCi" role="3rvSg0">
1111+
<ref role="2ZWj4r" to="i3ya:2hbaSyABMZL" resolve="UnitScalingType" />
1112+
</node>
1113+
</node>
1114+
<node concept="2JFqV2" id="4zqoYUC7TgQ" role="2frcjj" />
1115+
</node>
10741116
<node concept="3Tm1VV" id="4qv99IryjZp" role="1B3o_S" />
10751117
</node>
10761118
<node concept="312cEu" id="4qv99IrzTI8">

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

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -825,6 +825,16 @@
825825
<property role="TrG5h" value="metric" />
826826
<property role="1L1pqM" value="metric-scaled" />
827827
</node>
828+
<node concept="25R33" id="4zqoYUyQ7z3" role="25R1y">
829+
<property role="3tVfz5" value="5249618192239196355" />
830+
<property role="TrG5h" value="metric_positive" />
831+
<property role="1L1pqM" value="metric-scaled (positive)" />
832+
</node>
833+
<node concept="25R33" id="4zqoYUyQ7z4" role="25R1y">
834+
<property role="3tVfz5" value="5249618192239196356" />
835+
<property role="TrG5h" value="metric_negative" />
836+
<property role="1L1pqM" value="metric-scaled (negative)" />
837+
</node>
828838
<node concept="25R33" id="2hbaSyABMZQ" role="25R1y">
829839
<property role="3tVfz5" value="2615231874529701878" />
830840
<property role="TrG5h" value="binary_iec" />

0 commit comments

Comments
 (0)