From fa03245fc3523e1a9599e310f7fbe5ed97abadbd Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 13:29:11 +0300 Subject: [PATCH 01/10] feat(#2437): allow using data object directly --- .../org/eolang/maven/pre/to-java.xsl | 10 ++-- .../maven/packs/pre/locators-to-java.yaml | 5 +- .../eolang/maven/packs/pre/tuple-to-java.yaml | 2 +- .../java/org/eolang/parser/ParsingTrain.java | 2 +- .../org/eolang/parser/explicit-data.xsl | 55 +++++++++++++++++++ .../eolang/parser/packs/explicit-data.yaml | 10 ++++ 6 files changed, 76 insertions(+), 8 deletions(-) create mode 100644 eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl create mode 100644 eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml diff --git a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl index 5c8d2bf248..8227fc490a 100644 --- a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl +++ b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl @@ -397,11 +397,11 @@ SOFTWARE. = - - new - - (Phi.Φ) - + + + + + rho diff --git a/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/locators-to-java.yaml b/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/locators-to-java.yaml index b3f45e00fe..0dfa9b34ff 100644 --- a/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/locators-to-java.yaml +++ b/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/locators-to-java.yaml @@ -2,6 +2,7 @@ xsls: - /org/eolang/parser/add-default-package.xsl - /org/eolang/parser/wrap-method-calls.xsl - /org/eolang/parser/set-locators.xsl + - /org/eolang/parser/explicit-data.xsl - /org/eolang/maven/pre/classes.xsl - /org/eolang/maven/pre/attrs.xsl - /org/eolang/maven/pre/data.xsl @@ -15,6 +16,7 @@ tests: - //java[contains(text(), 'new PhLocated(ret_base, 7, 2, "Φ.bar.φ.ρ")')] - //java[contains(text(), 'new PhLocated(ret, 7, 4, "Φ.bar.φ")')] - //java[contains(text(), 'new PhLocated(ret_1, 7, 10, "Φ.bar.φ.α0")')] + - //java[contains(text(), 'new PhLocated(ret, 8, 2, "Φ.bar.five")')] eo: | [] > foo 42 > @ @@ -22,4 +24,5 @@ eo: | 43.plus y > @ [] > bar - 42.plus 43 > @ \ No newline at end of file + 42.plus 43 > @ + int 5 > five diff --git a/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml b/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml index a484c83b5f..103123d3b5 100644 --- a/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml +++ b/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml @@ -6,7 +6,7 @@ xsls: - /org/eolang/maven/pre/to-java.xsl tests: - /program/errors[count(*)=0] - - //java[contains(text(), 'Phi ret_a2_a1 = new EOorg.EOeolang.EOint(')] + - //java[contains(text(), 'Phi ret_a2_a1 = Phi.Φ.attr("org").get().attr("eolang").get().attr("int").get()')] - //java[contains(text(), 'Phi[] ret_2_a = new Phi[0]')] - //java[contains(text(), 'new String(new byte[]')] eo: | diff --git a/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java b/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java index d5b10ec21f..d49f353300 100644 --- a/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java +++ b/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java @@ -91,9 +91,9 @@ public final class ParsingTrain extends TrEnvelope { "/org/eolang/parser/warnings/correct-package-meta.xsl", "/org/eolang/parser/warnings/prohibited-package.xsl", "/org/eolang/parser/errors/unused-aliases.xsl", - "/org/eolang/parser/errors/data-objects.xsl", "/org/eolang/parser/warnings/unit-test-without-phi.xsl", "/org/eolang/parser/set-locators.xsl", + "/org/eolang/parser/explicit-data.xsl" }; /** diff --git a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl new file mode 100644 index 0000000000..1561db587d --- /dev/null +++ b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml b/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml new file mode 100644 index 0000000000..d34e4162f5 --- /dev/null +++ b/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml @@ -0,0 +1,10 @@ +xsls: + - /org/eolang/parser/add-default-package.xsl + - /org/eolang/parser/explicit-data.xsl +tests: + - /program/errors[count(*)=0] + - //o[@base='org.eolang.int' and @name='first' and @line='1' and @pos='0' and @data] + - //o[@base='org.eolang.float' and @name='second' and @line='2' and @pos='0' and @data and count(o)=0] +eo: | + 42 > first + float 22.2 > second From 0b29385ce30e3de113d29085d87dc400b3a14771 Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 13:37:59 +0300 Subject: [PATCH 02/10] feat(#2437): checkstyle + renaming --- .../resources/org/eolang/maven/pre/to-java.xsl | 5 ----- .../java/org/eolang/parser/ParsingTrain.java | 2 +- .../org/eolang/parser/explicit-data.xsl | 16 ++++++++++++---- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl index 8227fc490a..2c95c7cc22 100644 --- a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl +++ b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl @@ -397,11 +397,6 @@ SOFTWARE. = - - - - - rho diff --git a/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java b/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java index d49f353300..9870bfe8a9 100644 --- a/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java +++ b/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java @@ -93,7 +93,7 @@ public final class ParsingTrain extends TrEnvelope { "/org/eolang/parser/errors/unused-aliases.xsl", "/org/eolang/parser/warnings/unit-test-without-phi.xsl", "/org/eolang/parser/set-locators.xsl", - "/org/eolang/parser/explicit-data.xsl" + "/org/eolang/parser/explicit-data.xsl", }; /** diff --git a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl index 1561db587d..92cf318b63 100644 --- a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl +++ b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl @@ -22,12 +22,20 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --> - + From 80db81803bbfdec90e64478dedbb9465779b8e80 Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 16:44:08 +0300 Subject: [PATCH 03/10] feat(#2437): copy --- .../org/eolang/maven/pre/to-java.xsl | 16 ++++++++-- .../org/eolang/parser/explicit-data.xsl | 31 +++++++++++-------- .../src/main/java/org/eolang/PhDefault.java | 5 ++- .../src/test/eo/org/eolang/runtime-tests.eo | 24 ++++++++++++++ .../test/java/EOorg/EOeolang/EOintTest.java | 16 ++++++++++ 5 files changed, 76 insertions(+), 16 deletions(-) diff --git a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl index 2c95c7cc22..08b1bd696f 100644 --- a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl +++ b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl @@ -261,6 +261,18 @@ SOFTWARE. return this.attr("Δ").get().equals(obj); } + + + @Override + + public Phi copy() { + + return ( + + ) super.copy(); + + } + @@ -614,9 +626,9 @@ SOFTWARE. - = new PhWith( + = new PhWith(new PhCopy( - , "Δ", new Data.Value<>( + ), "Δ", new Data.Value<>( )); diff --git a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl index 92cf318b63..fcb08e440c 100644 --- a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl +++ b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl @@ -39,21 +39,26 @@ SOFTWARE. --> - + - - - - - + + + + + + + + + + - - - - - - - + + + + + + + diff --git a/eo-runtime/src/main/java/org/eolang/PhDefault.java b/eo-runtime/src/main/java/org/eolang/PhDefault.java index d93e4fd446..ef25ee81c7 100644 --- a/eo-runtime/src/main/java/org/eolang/PhDefault.java +++ b/eo-runtime/src/main/java/org/eolang/PhDefault.java @@ -127,6 +127,8 @@ public boolean equals(final Object obj) { @Override public int hashCode() { +// System.out.println(this.forma()); + System.out.println("PhDefault hashCode"); return this.vertex; } @@ -182,7 +184,7 @@ public String toString() { } @Override - public final Phi copy() { + public Phi copy() { try { final PhDefault copy = (PhDefault) this.clone(); copy.vertex = PhDefault.VTX.next(); @@ -243,6 +245,7 @@ public final Attr attr(final String name) { PhDefault.NESTING.set(PhDefault.NESTING.get() + 1); Attr attr; if ("ν".equals(name)) { + System.out.println(this.forma()); attr = new AtSimple(new Data.ToPhi((long) this.hashCode())); } else { attr = this.attrs.get(name); diff --git a/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo b/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo index 2f045869c6..26dd6ed25f 100644 --- a/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo +++ b/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo @@ -133,6 +133,30 @@ TRUE $.equal-to TRUE +[] > check-vertex + seq > @ + QQ.io.stdout + QQ.txt.sprintf + "Ints: %d %d\n" + 42.< + 42.< + QQ.io.stdout + QQ.txt.sprintf + "Floats: %d %d\n" + 42.2.< + 42.2.< + QQ.io.stdout + QQ.txt.sprintf + "Bools: %d %d\n" + TRUE.< + TRUE.< + QQ.io.stdout + QQ.txt.sprintf + "Strings: %d %d\n" + "Hello world".< + "Hello world".< + TRUE + [] > positive-object-vertices assert-that > @ and. diff --git a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java index 3825ee416b..803015288b 100644 --- a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java +++ b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java @@ -28,6 +28,8 @@ package EOorg.EOeolang; import org.eolang.Data; +import org.eolang.Dataized; +import org.eolang.PhWith; import org.eolang.Phi; import org.hamcrest.MatcherAssert; import org.hamcrest.Matchers; @@ -40,6 +42,20 @@ * @checkstyle TypeNameCheck (4 lines) */ public class EOintTest { + @Test + void hasEqualHashesIfFoundByLocator() { + final Phi integer = Phi.Φ.attr("org").get().attr("eolang").get().attr("int").get(); + MatcherAssert.assertThat( + new Dataized( + new PhWith(integer.copy(), "Δ", new Data.Value<>(42L)).attr("ν").get() + ).take(), + Matchers.equalTo( + new Dataized( + new PhWith(integer.copy(), "Δ", new Data.Value<>(42L)).attr("ν").get() + ).take() + ) + ); + } @Test void hasEqualHashes() { From 8f04e8d3621e76de846287e1264af46b0f39a14f Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 16:46:02 +0300 Subject: [PATCH 04/10] feat(#2437): sout --- eo-runtime/src/main/java/org/eolang/PhDefault.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/eo-runtime/src/main/java/org/eolang/PhDefault.java b/eo-runtime/src/main/java/org/eolang/PhDefault.java index ef25ee81c7..02f5120777 100644 --- a/eo-runtime/src/main/java/org/eolang/PhDefault.java +++ b/eo-runtime/src/main/java/org/eolang/PhDefault.java @@ -127,8 +127,6 @@ public boolean equals(final Object obj) { @Override public int hashCode() { -// System.out.println(this.forma()); - System.out.println("PhDefault hashCode"); return this.vertex; } @@ -245,7 +243,6 @@ public final Attr attr(final String name) { PhDefault.NESTING.set(PhDefault.NESTING.get() + 1); Attr attr; if ("ν".equals(name)) { - System.out.println(this.forma()); attr = new AtSimple(new Data.ToPhi((long) this.hashCode())); } else { attr = this.attrs.get(name); From 1010216b0a5106aacd6098fb13c00d6ae6389b1f Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 16:46:33 +0300 Subject: [PATCH 05/10] feat(#2437): test --- .../src/test/eo/org/eolang/runtime-tests.eo | 24 ------------------- 1 file changed, 24 deletions(-) diff --git a/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo b/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo index 26dd6ed25f..2f045869c6 100644 --- a/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo +++ b/eo-runtime/src/test/eo/org/eolang/runtime-tests.eo @@ -133,30 +133,6 @@ TRUE $.equal-to TRUE -[] > check-vertex - seq > @ - QQ.io.stdout - QQ.txt.sprintf - "Ints: %d %d\n" - 42.< - 42.< - QQ.io.stdout - QQ.txt.sprintf - "Floats: %d %d\n" - 42.2.< - 42.2.< - QQ.io.stdout - QQ.txt.sprintf - "Bools: %d %d\n" - TRUE.< - TRUE.< - QQ.io.stdout - QQ.txt.sprintf - "Strings: %d %d\n" - "Hello world".< - "Hello world".< - TRUE - [] > positive-object-vertices assert-that > @ and. From 94c71f28807b0c1a7c456fdde2c7693dd849e8ca Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 18:51:27 +0300 Subject: [PATCH 06/10] feat(#2437): revert --- .../org/eolang/maven/pre/to-java.xsl | 21 +++++++------------ .../eolang/maven/packs/pre/tuple-to-java.yaml | 2 +- .../src/main/java/org/eolang/PhDefault.java | 2 +- .../test/java/EOorg/EOeolang/EOintTest.java | 4 ++++ 4 files changed, 13 insertions(+), 16 deletions(-) diff --git a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl index 08b1bd696f..5c8d2bf248 100644 --- a/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl +++ b/eo-maven-plugin/src/main/resources/org/eolang/maven/pre/to-java.xsl @@ -261,18 +261,6 @@ SOFTWARE. return this.attr("Δ").get().equals(obj); } - - - @Override - - public Phi copy() { - - return ( - - ) super.copy(); - - } - @@ -409,6 +397,11 @@ SOFTWARE. = + + new + + (Phi.Φ) + rho @@ -626,9 +619,9 @@ SOFTWARE. - = new PhWith(new PhCopy( + = new PhWith( - ), "Δ", new Data.Value<>( + , "Δ", new Data.Value<>( )); diff --git a/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml b/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml index 103123d3b5..a484c83b5f 100644 --- a/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml +++ b/eo-maven-plugin/src/test/resources/org/eolang/maven/packs/pre/tuple-to-java.yaml @@ -6,7 +6,7 @@ xsls: - /org/eolang/maven/pre/to-java.xsl tests: - /program/errors[count(*)=0] - - //java[contains(text(), 'Phi ret_a2_a1 = Phi.Φ.attr("org").get().attr("eolang").get().attr("int").get()')] + - //java[contains(text(), 'Phi ret_a2_a1 = new EOorg.EOeolang.EOint(')] - //java[contains(text(), 'Phi[] ret_2_a = new Phi[0]')] - //java[contains(text(), 'new String(new byte[]')] eo: | diff --git a/eo-runtime/src/main/java/org/eolang/PhDefault.java b/eo-runtime/src/main/java/org/eolang/PhDefault.java index 02f5120777..d93e4fd446 100644 --- a/eo-runtime/src/main/java/org/eolang/PhDefault.java +++ b/eo-runtime/src/main/java/org/eolang/PhDefault.java @@ -182,7 +182,7 @@ public String toString() { } @Override - public Phi copy() { + public final Phi copy() { try { final PhDefault copy = (PhDefault) this.clone(); copy.vertex = PhDefault.VTX.next(); diff --git a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java index 803015288b..99b4d11d9c 100644 --- a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java +++ b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java @@ -33,6 +33,7 @@ import org.eolang.Phi; import org.hamcrest.MatcherAssert; import org.hamcrest.Matchers; +import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; /** @@ -40,9 +41,12 @@ * * @since 0.1 * @checkstyle TypeNameCheck (4 lines) + * + * @todo */ public class EOintTest { @Test + @Disabled void hasEqualHashesIfFoundByLocator() { final Phi integer = Phi.Φ.attr("org").get().attr("eolang").get().attr("int").get(); MatcherAssert.assertThat( From 67a00a3638f891dcf889d29fe049521c30c9e482 Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Thu, 7 Sep 2023 18:59:33 +0300 Subject: [PATCH 07/10] feat(#2437): removed test --- .../test/java/EOorg/EOeolang/EOintTest.java | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java index 99b4d11d9c..832dfff3d9 100644 --- a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java +++ b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java @@ -28,12 +28,9 @@ package EOorg.EOeolang; import org.eolang.Data; -import org.eolang.Dataized; -import org.eolang.PhWith; import org.eolang.Phi; import org.hamcrest.MatcherAssert; import org.hamcrest.Matchers; -import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; /** @@ -41,26 +38,8 @@ * * @since 0.1 * @checkstyle TypeNameCheck (4 lines) - * - * @todo */ public class EOintTest { - @Test - @Disabled - void hasEqualHashesIfFoundByLocator() { - final Phi integer = Phi.Φ.attr("org").get().attr("eolang").get().attr("int").get(); - MatcherAssert.assertThat( - new Dataized( - new PhWith(integer.copy(), "Δ", new Data.Value<>(42L)).attr("ν").get() - ).take(), - Matchers.equalTo( - new Dataized( - new PhWith(integer.copy(), "Δ", new Data.Value<>(42L)).attr("ν").get() - ).take() - ) - ); - } - @Test void hasEqualHashes() { final Phi left = new Data.ToPhi(42L); From 0a9ce9dcfd21537412b38ce17dd6e07381b1c07d Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Fri, 8 Sep 2023 11:56:34 +0300 Subject: [PATCH 08/10] feat(#2437): empty line --- .../test/java/org/eolang/maven/hash/CommitHashesMapTest.java | 2 +- eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java b/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java index a8a636ae02..d9aa7ad627 100644 --- a/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java +++ b/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java @@ -45,7 +45,7 @@ final class CommitHashesMapTest { @ParameterizedTest @CsvSource({ "0.26.0, e0b7836", - "0.28.10, 9b88393", + "0.28.10, 9b88393#", }) void containsValidHash(final String tag, final String hash) { final Map hashes = new CommitHashesMap(); diff --git a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java index 832dfff3d9..3825ee416b 100644 --- a/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java +++ b/eo-runtime/src/test/java/EOorg/EOeolang/EOintTest.java @@ -40,6 +40,7 @@ * @checkstyle TypeNameCheck (4 lines) */ public class EOintTest { + @Test void hasEqualHashes() { final Phi left = new Data.ToPhi(42L); From 7f480d854473960a267cde70c877f902df67256e Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Fri, 8 Sep 2023 11:57:16 +0300 Subject: [PATCH 09/10] feat(#2437): typo --- .../test/java/org/eolang/maven/hash/CommitHashesMapTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java b/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java index d9aa7ad627..a8a636ae02 100644 --- a/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java +++ b/eo-maven-plugin/src/test/java/org/eolang/maven/hash/CommitHashesMapTest.java @@ -45,7 +45,7 @@ final class CommitHashesMapTest { @ParameterizedTest @CsvSource({ "0.26.0, e0b7836", - "0.28.10, 9b88393#", + "0.28.10, 9b88393", }) void containsValidHash(final String tag, final String hash) { final Map hashes = new CommitHashesMap(); From 391d7a32e4e6972eeea0d3f0e620f25c7e73a893 Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Fri, 8 Sep 2023 14:54:31 +0300 Subject: [PATCH 10/10] feat(#2437): via QQ --- .../org/eolang/parser/explicit-data.xsl | 45 ++++++++++++++++--- .../eolang/parser/packs/explicit-data.yaml | 17 ++++++- 2 files changed, 55 insertions(+), 7 deletions(-) diff --git a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl index fcb08e440c..56ad9f5bbd 100644 --- a/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl +++ b/eo-parser/src/main/resources/org/eolang/parser/explicit-data.xsl @@ -28,19 +28,38 @@ SOFTWARE. - 5 => 5 - int 5 => 5 - float 22.4 => 22.4 + - QQ.bool TRUE > TRUE In the level of xmir it looks like: - - 2 => 2 - - - => 42 - 42 + - 2 => 2 + - + => 42 + 42 + + + - + => 01 + + + + + 01 --> - + + + + + + + + + @@ -55,6 +74,22 @@ SOFTWARE. + + + + + + + + + + + + + + + + diff --git a/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml b/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml index d34e4162f5..71d73a04d9 100644 --- a/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml +++ b/eo-parser/src/test/resources/org/eolang/parser/packs/explicit-data.yaml @@ -1,10 +1,23 @@ xsls: + - /org/eolang/parser/wrap-method-calls.xsl + - /org/eolang/parser/expand-qqs.xsl - /org/eolang/parser/add-default-package.xsl - /org/eolang/parser/explicit-data.xsl tests: - /program/errors[count(*)=0] - - //o[@base='org.eolang.int' and @name='first' and @line='1' and @pos='0' and @data] - - //o[@base='org.eolang.float' and @name='second' and @line='2' and @pos='0' and @data and count(o)=0] + - //o[@base='org.eolang.int' and @name='first' and @data] + - //o[@base='org.eolang.float' and @name='second' and @data and count(o)=0] + - //o[@base='org.eolang.bool' and @name='third' and @data and count(o)=0] + - //o[@base='org.eolang.bytes' and @name='fourth' and @data and count(o)=0] + - //o[@base='org.eolang.string' and @name='str' and @data and count(o)=0] + - //o[@base='org.eolang.tuple' and o[@base='org.eolang.tuple']] eo: | 42 > first float 22.2 > second + QQ.bool TRUE > third + QQ.bytes > fourth + 11-21 + Q.org.eolang.string "Hey" > str + tuple + * 1 + 2