From 8bc2d9a1ffdbc319c95accd6d0963b78989dea8e Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Wed, 10 Apr 2024 17:01:36 +0300 Subject: [PATCH 1/7] feat(#3042): first --- .../java/org/eolang/parser/ParsingTrain.java | 1 + .../org/eolang/parser/const-to-dataized.xsl | 59 +++++++++++++++++++ .../parser/packs/const-to-dataized.yaml | 13 ++++ 3 files changed, 73 insertions(+) create mode 100644 eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl create mode 100644 eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml 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 032c403b9c..38a029935a 100644 --- a/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java +++ b/eo-parser/src/main/java/org/eolang/parser/ParsingTrain.java @@ -104,6 +104,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/explicit-data.xsl", + "/org/eolang/parser/const-to-dataized.xsl", "/org/eolang/parser/set-locators.xsl", }; diff --git a/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl b/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl new file mode 100644 index 0000000000..4adfb8ed6a --- /dev/null +++ b/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml b/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml new file mode 100644 index 0000000000..298299e84f --- /dev/null +++ b/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml @@ -0,0 +1,13 @@ +tests: + - //o[@base='.as-bytes' and @name='x' and o[@base='org.eolang.dataized' and o[@base='org.eolang.int' and not(@name)]]] + - //o[@base='.as-bytes' and @name='y' and o[@base='org.eolang.dataized' and o[@base='org.eolang.int' and not(@name)]]] +eo: | + # This is the default 64+ symbols comment in front of abstract object. + [] > foo + int > x! + # This is the default 64+ symbols comment in front of named abstract object. + [] > m! + a + b + c 1 2 > y! + .o > z! From 7e791c04ffa40d3cfcb53b489f5aa92ee8d65937 Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Wed, 10 Apr 2024 18:04:32 +0300 Subject: [PATCH 2/7] feat(#3042): unique name for abstract objects --- .../org/eolang/parser/const-to-dataized.xsl | 23 ++++++++++++++++++- .../parser/packs/const-to-dataized.yaml | 8 ++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl b/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl index 4adfb8ed6a..8eb5745f34 100644 --- a/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl +++ b/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl @@ -22,7 +22,7 @@ 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. --> - + + + + + + + + + + + + + + + + + @@ -44,6 +60,11 @@ SOFTWARE. + + + + + diff --git a/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml b/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml index 298299e84f..8890ea75b7 100644 --- a/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml +++ b/eo-parser/src/test/resources/org/eolang/parser/packs/const-to-dataized.yaml @@ -1,6 +1,8 @@ tests: - //o[@base='.as-bytes' and @name='x' and o[@base='org.eolang.dataized' and o[@base='org.eolang.int' and not(@name)]]] - - //o[@base='.as-bytes' and @name='y' and o[@base='org.eolang.dataized' and o[@base='org.eolang.int' and not(@name)]]] + - //o[@base='.as-bytes' and @name='m' and o[@base='org.eolang.dataized' and o[@abstract and @name='m-3' and count(o)=2]]] + - //o[@base='.as-bytes' and @name='z' and o[@base='org.eolang.dataized' and o[@base='.o' and not(@name) and count(o)=1]]] + - //o[@base='.as-bytes' and @name='y' and o[@base='org.eolang.dataized' and o[@base='org.eolang.c' and not(@name)]]] eo: | # This is the default 64+ symbols comment in front of abstract object. [] > foo @@ -11,3 +13,7 @@ eo: | b c 1 2 > y! .o > z! + # This is the default 64+ symbols comment in front of named abstract object. + [] > m-1 + # This is the default 64+ symbols comment in front of named abstract object. + [] > m-2 From 5d3b790e050a6daee071096151439d1e57a4d026 Mon Sep 17 00:00:00 2001 From: maxonfjvipon Date: Wed, 10 Apr 2024 18:17:01 +0300 Subject: [PATCH 3/7] feat(#3042): tests --- .../main/resources/org/eolang/maven/pre/to-java.xsl | 10 ---------- .../src/test/resources/org/eolang/maven/mess.eo | 2 +- .../resources/org/eolang/parser/const-to-dataized.xsl | 4 +++- .../org/eolang/parser/packs/const-to-dataized.yaml | 9 +++++---- 4 files changed, 9 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 6c2943e4bd..f9fafcf169 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 @@ -246,11 +246,6 @@ SOFTWARE. - - - ret = new PhConst(ret); - - return ret; @@ -268,11 +263,6 @@ SOFTWARE. - - - ret = new PhConst(ret); - - return ret; diff --git a/eo-maven-plugin/src/test/resources/org/eolang/maven/mess.eo b/eo-maven-plugin/src/test/resources/org/eolang/maven/mess.eo index d5ec32bafc..59bda6ec6b 100644 --- a/eo-maven-plugin/src/test/resources/org/eolang/maven/mess.eo +++ b/eo-maven-plugin/src/test/resources/org/eolang/maven/mess.eo @@ -17,7 +17,7 @@ 666 two.f1.f2 x stdout > z - sprintf > f! + sprintf > f "Hello, ".trim x 0x1fff n diff --git a/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl b/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl index 8eb5745f34..aa8cb084ab 100644 --- a/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl +++ b/eo-parser/src/main/resources/org/eolang/parser/const-to-dataized.xsl @@ -22,7 +22,7 @@ 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. --> - +