trfoldlit 0.16.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global trfoldlit --version 0.16.0                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local trfoldlit --version 0.16.0                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=trfoldlit&version=0.16.0                
nuke :add-package trfoldlit --version 0.16.0                

Replace a sequence of symbols on the RHS of a rule with the rule LHS symbol.
This program is part of the Trash toolkit.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
0.23.14 595 2/9/2025
0.23.13 340 1/19/2025
0.23.12 386 1/16/2025
0.23.11 2,067 12/18/2024
0.23.10 101 12/12/2024
0.23.9 97 11/29/2024
0.23.8 144 11/1/2024
0.23.7 4,213 10/9/2024
0.23.6 724 9/21/2024
0.23.5 110 9/15/2024
0.23.4 135 9/7/2024
0.23.3 128 8/15/2024
0.23.2 137 6/28/2024
0.23.1 113 6/22/2024
0.23.0 192 4/25/2024
0.22.0 243 2/26/2024
0.21.16 251 11/16/2023
0.21.15 172 11/16/2023
0.21.14 140 11/15/2023
0.21.13 150 11/14/2023
0.21.12 265 10/27/2023
0.21.11 341 10/24/2023
0.21.9 310 9/27/2023
0.21.8 269 9/26/2023
0.21.7 296 9/26/2023
0.21.6 275 9/20/2023
0.21.5 208 9/18/2023
0.21.4 230 9/17/2023
0.21.3 234 9/14/2023
0.21.2 242 9/4/2023
0.21.1 384 8/15/2023
0.21.0 268 6/25/2023
0.20.27 219 6/15/2023
0.20.26 202 6/5/2023
0.20.25 209 6/3/2023
0.20.24 218 6/1/2023
0.20.23 201 5/31/2023
0.20.22 234 5/21/2023
0.20.21 245 5/15/2023
0.20.20 237 5/11/2023
0.20.19 222 5/8/2023
0.20.18 235 5/8/2023
0.20.17 245 5/4/2023
0.20.16 264 5/1/2023
0.20.15 256 4/27/2023
0.20.14 293 4/21/2023
0.20.13 307 4/13/2023
0.18.1 549 11/11/2022
0.18.0 477 11/7/2022
0.17.0 505 9/11/2022
0.16.5 541 7/29/2022
0.16.4 557 6/13/2022
0.16.3 590 5/7/2022
0.16.2 568 5/6/2022
0.16.1 568 5/5/2022
0.16.0 608 4/13/2022
0.15.1 565 4/4/2022
0.15.0 569 3/20/2022
0.14.3 592 2/27/2022
0.14.2 549 2/18/2022
0.14.1 550 1/26/2022
0.14.0 581 1/26/2022
0.13.8 566 1/14/2022
0.13.7 552 1/13/2022
0.13.6 566 1/13/2022
0.13.5 587 1/12/2022
0.13.4 556 1/11/2022
0.13.3 569 1/10/2022
0.13.2 401 12/24/2021
0.13.1 369 12/24/2021
0.13.0 389 12/23/2021
0.12.0 430 12/6/2021
0.11.5 439 10/17/2021
0.11.4 425 10/17/2021
0.11.3 425 9/28/2021
0.11.2 449 9/26/2021
0.11.1 453 9/25/2021
0.11.0 504 9/24/2021
0.10.0 430 9/9/2021
0.8.9 399 8/13/2021
0.8.8 415 8/5/2021
0.8.7 405 7/20/2021
0.8.6 446 7/13/2021
0.8.5 424 7/6/2021
0.8.4 435 6/24/2021
0.8.3 510 6/13/2021
0.8.2 417 6/8/2021
0.8.1 381 6/2/2021
0.8.0 387 5/27/2021
0.7.0 401 5/10/2021
0.6.0 408 5/3/2021
0.5.5 425 4/22/2021
0.5.0 414 4/14/2021

# Trfoldlit
Reads a parse tree from stdin, replaces a string literals on
the RHS of a rule with the lexer rule LHS symbol, and writes
the modified parsing result set to stdout. The input and
output are Parse Tree Data.
# Usage
trfoldlit
# Examples
Before:
grammar Expression;
e : e ('*' | '/') e
| e ('+' | '-') e
| '(' e ')'
| ('-' | '+')* a
;
a : INT ;
INT : ('0' .. '9')+ ;
MUL : '*' ;
DIV : '/' ;
ADD : '+' ;
SUB : '-' ;
LP : '(' ;
RP : ')' ;
WS : [ \r\n\t] + -> skip ;
Command:
trparse Expression.g4 | trfoldlit | trsponge -c
After:
grammar Expression;
e : e (MUL | DIV) e
| e (ADD | SUB) e
| LP e RP
| (SUB | ADD)* a
;
a : INT ;
INT : ('0' .. '9')+ ;
MUL : '*' ;
DIV : '/' ;
ADD : '+' ;
SUB : '-' ;
LP : '(' ;
RP : ')' ;
WS : [ \r\n\t] + -> skip ;
# Notes
If you are running MSYS2 on Windows, you may notice that XPaths are not being
processed by this command correctly. To avoid the Bash shell from altering
XPaths, type _export MSYS2_ARG_CONV_EXCL="*"_, then execute your command.
# Current version
0.16.0 -- Token/character stream refactorings changed (#94).