Skip to content

Commit 9fca286

Browse files
committed
fix
1 parent 81c5cea commit 9fca286

6 files changed

Lines changed: 9615 additions & 12469 deletions

File tree

csharp/Antlr4Helper.CSharpHelper/Antlr4Helper.CSharpHelper.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>net6.0</TargetFramework>
5+
<TargetFramework>net10.0</TargetFramework>
66
</PropertyGroup>
77

88
</Project>

csharp/Antlr4Helper.CSharpHelper/Program.cs

Lines changed: 53 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -10,84 +10,84 @@ class Program
1010
{
1111
static void Main(string[] args)
1212
{
13-
var str = @"T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9,
14-
T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17,
15-
T__17=18, T__18=19, T__19=20, T__20=21, T__21=22, T__22=23, T__23=24,
16-
T__24=25, T__25=26, SUB=27, NUM=28, STRING=29, NULL=30, IF=31, IFERROR=32,
17-
ISNUMBER=33, ISTEXT=34, ISERROR=35, ISNONTEXT=36, ISLOGICAL=37, ISEVEN=38,
18-
ISODD=39, ISNULL=40, ISNULLORERROR=41, AND=42, OR=43, NOT=44, TRUE=45,
19-
FALSE=46, E=47, PI=48, DEC2BIN=49, DEC2HEX=50, DEC2OCT=51, HEX2BIN=52,
20-
HEX2DEC=53, HEX2OCT=54, OCT2BIN=55, OCT2DEC=56, OCT2HEX=57, BIN2OCT=58,
21-
BIN2DEC=59, BIN2HEX=60, ABS=61, QUOTIENT=62, MOD=63, SIGN=64, SQRT=65,
22-
TRUNC=66, INT=67, GCD=68, LCM=69, COMBIN=70, PERMUT=71, DEGREES=72, RADIANS=73,
23-
COS=74, COSH=75, SIN=76, SINH=77, TAN=78, TANH=79, ACOS=80, ACOSH=81,
24-
ASIN=82, ASINH=83, ATAN=84, ATANH=85, ATAN2=86, ROUND=87, ROUNDDOWN=88,
25-
ROUNDUP=89, CEILING=90, FLOOR=91, EVEN=92, ODD=93, MROUND=94, RAND=95,
26-
RANDBETWEEN=96, FACT=97, FACTDOUBLE=98, POWER=99, EXP=100, LN=101, LOG=102,
27-
LOG10=103, MULTINOMIAL=104, PRODUCT=105, SQRTPI=106, SUMSQ=107, ASC=108,
28-
JIS=109, CHAR=110, CLEAN=111, CODE=112, CONCATENATE=113, EXACT=114, FIND=115,
29-
FIXED=116, LEFT=117, LEN=118, LOWER=119, MID=120, PROPER=121, REPLACE=122,
30-
REPT=123, RIGHT=124, RMB=125, SEARCH=126, SUBSTITUTE=127, T=128, TEXT=129,
31-
TRIM=130, UPPER=131, VALUE=132, DATEVALUE=133, TIMEVALUE=134, DATE=135,
32-
TIME=136, NOW=137, TODAY=138, YEAR=139, MONTH=140, DAY=141, HOUR=142,
33-
MINUTE=143, SECOND=144, WEEKDAY=145, DATEDIF=146, DAYS360=147, EDATE=148,
34-
EOMONTH=149, NETWORKDAYS=150, WORKDAY=151, WEEKNUM=152, MAX=153, MEDIAN=154,
35-
MIN=155, QUARTILE=156, MODE=157, LARGE=158, SMALL=159, PERCENTILE=160,
36-
PERCENTRANK=161, AVERAGE=162, AVERAGEIF=163, GEOMEAN=164, HARMEAN=165,
37-
COUNT=166, COUNTIF=167, SUM=168, SUMIF=169, AVEDEV=170, STDEV=171, STDEVP=172,
38-
DEVSQ=173, VAR=174, VARP=175, NORMDIST=176, NORMINV=177, NORMSDIST=178,
39-
NORMSINV=179, BETADIST=180, BETAINV=181, BINOMDIST=182, EXPONDIST=183,
40-
FDIST=184, FINV=185, FISHER=186, FISHERINV=187, GAMMADIST=188, GAMMAINV=189,
41-
GAMMALN=190, HYPGEOMDIST=191, LOGINV=192, LOGNORMDIST=193, NEGBINOMDIST=194,
42-
POISSON=195, TDIST=196, TINV=197, WEIBULL=198, URLENCODE=199, URLDECODE=200,
43-
HTMLENCODE=201, HTMLDECODE=202, BASE64TOTEXT=203, BASE64URLTOTEXT=204,
44-
TEXTTOBASE64=205, TEXTTOBASE64URL=206, REGEX=207, REGEXREPALCE=208, ISREGEX=209,
45-
GUID=210, MD5=211, SHA1=212, SHA256=213, SHA512=214, CRC32=215, HMACMD5=216,
46-
HMACSHA1=217, HMACSHA256=218, HMACSHA512=219, TRIMSTART=220, TRIMEND=221,
47-
INDEXOF=222, LASTINDEXOF=223, SPLIT=224, JOIN=225, SUBSTRING=226, STARTSWITH=227,
48-
ENDSWITH=228, ISNULLOREMPTY=229, ISNULLORWHITESPACE=230, REMOVESTART=231,
49-
REMOVEEND=232, JSON=233, VLOOKUP=234, LOOKUP=235, ARRAY=236, ADDYEARS=237,
50-
ADDMONTHS=238, ADDDAYS=239, ADDHOURS=240, ADDMINUTES=241, ADDSECONDS=242,
51-
TIMESTAMP=243, PARAMETER=244, PARAMETER2=245, WS=246, COMMENT=247, LINE_COMMENT=248;
52-
53-
RULE_prog=0, RULE_expr=1, RULE_parameter2=2;
13+
var str = @"T__0 = 1, T__1 = 2, T__2 = 3, T__3 = 4, T__4 = 5, T__5 = 6, T__6 = 7, T__7 = 8, T__8 = 9,
14+
T__9 = 10, T__10 = 11, T__11 = 12, T__12 = 13, T__13 = 14, T__14 = 15, T__15 = 16, T__16 = 17,
15+
T__17 = 18, T__18 = 19, T__19 = 20, T__20 = 21, T__21 = 22, T__22 = 23, T__23 = 24,
16+
T__24 = 25, T__25 = 26, T__26 = 27, T__27 = 28, SUB = 29, NUM = 30, STRING = 31, NULL = 32,
17+
ERROR = 33, UNIT = 34, IF = 35, IFERROR = 36, ISNUMBER = 37, ISTEXT = 38, ISERROR = 39,
18+
ISNONTEXT = 40, ISLOGICAL = 41, ISEVEN = 42, ISODD = 43, ISNULL = 44, ISNULLORERROR = 45,
19+
AND = 46, OR = 47, NOT = 48, TRUE = 49, FALSE = 50, E = 51, PI = 52, DEC2BIN = 53, DEC2HEX = 54,
20+
DEC2OCT = 55, HEX2BIN = 56, HEX2DEC = 57, HEX2OCT = 58, OCT2BIN = 59, OCT2DEC = 60,
21+
OCT2HEX = 61, BIN2OCT = 62, BIN2DEC = 63, BIN2HEX = 64, ABS = 65, QUOTIENT = 66, MOD = 67,
22+
SIGN = 68, SQRT = 69, TRUNC = 70, INT = 71, GCD = 72, LCM = 73, COMBIN = 74, PERMUT = 75,
23+
DEGREES = 76, RADIANS = 77, COS = 78, COSH = 79, SIN = 80, SINH = 81, TAN = 82, TANH = 83,
24+
ACOS = 84, ACOSH = 85, ASIN = 86, ASINH = 87, ATAN = 88, ATANH = 89, ATAN2 = 90, ROUND = 91,
25+
ROUNDDOWN = 92, ROUNDUP = 93, CEILING = 94, FLOOR = 95, EVEN = 96, ODD = 97, MROUND = 98,
26+
RAND = 99, RANDBETWEEN = 100, FACT = 101, FACTDOUBLE = 102, POWER = 103, EXP = 104,
27+
LN = 105, LOG = 106, LOG10 = 107, MULTINOMIAL = 108, PRODUCT = 109, SQRTPI = 110,
28+
SUMSQ = 111, ASC = 112, JIS = 113, CHAR = 114, CLEAN = 115, CODE = 116, CONCATENATE = 117,
29+
EXACT = 118, FIND = 119, FIXED = 120, LEFT = 121, LEN = 122, LOWER = 123, MID = 124,
30+
PROPER = 125, REPLACE = 126, REPT = 127, RIGHT = 128, RMB = 129, SEARCH = 130, SUBSTITUTE = 131,
31+
T = 132, TEXT = 133, TRIM = 134, UPPER = 135, VALUE = 136, DATEVALUE = 137, TIMEVALUE = 138,
32+
DATE = 139, TIME = 140, NOW = 141, TODAY = 142, YEAR = 143, MONTH = 144, DAY = 145,
33+
HOUR = 146, MINUTE = 147, SECOND = 148, WEEKDAY = 149, DATEDIF = 150, DAYS360 = 151,
34+
EDATE = 152, EOMONTH = 153, NETWORKDAYS = 154, WORKDAY = 155, WEEKNUM = 156, MAX = 157,
35+
MEDIAN = 158, MIN = 159, QUARTILE = 160, MODE = 161, LARGE = 162, SMALL = 163, PERCENTILE = 164,
36+
PERCENTRANK = 165, AVERAGE = 166, AVERAGEIF = 167, GEOMEAN = 168, HARMEAN = 169,
37+
COUNT = 170, COUNTIF = 171, SUM = 172, SUMIF = 173, AVEDEV = 174, STDEV = 175, STDEVP = 176,
38+
COVAR = 177, COVARIANCES = 178, DEVSQ = 179, VAR = 180, VARP = 181, NORMDIST = 182,
39+
NORMINV = 183, NORMSDIST = 184, NORMSINV = 185, BETADIST = 186, BETAINV = 187, BINOMDIST = 188,
40+
EXPONDIST = 189, FDIST = 190, FINV = 191, FISHER = 192, FISHERINV = 193, GAMMADIST = 194,
41+
GAMMAINV = 195, GAMMALN = 196, HYPGEOMDIST = 197, LOGINV = 198, LOGNORMDIST = 199,
42+
NEGBINOMDIST = 200, POISSON = 201, TDIST = 202, TINV = 203, WEIBULL = 204, URLENCODE = 205,
43+
URLDECODE = 206, HTMLENCODE = 207, HTMLDECODE = 208, BASE64TOTEXT = 209, BASE64URLTOTEXT = 210,
44+
TEXTTOBASE64 = 211, TEXTTOBASE64URL = 212, REGEX = 213, REGEXREPALCE = 214, ISREGEX = 215,
45+
GUID = 216, MD5 = 217, SHA1 = 218, SHA256 = 219, SHA512 = 220, CRC32 = 221, HMACMD5 = 222,
46+
HMACSHA1 = 223, HMACSHA256 = 224, HMACSHA512 = 225, TRIMSTART = 226, TRIMEND = 227,
47+
INDEXOF = 228, LASTINDEXOF = 229, SPLIT = 230, JOIN = 231, SUBSTRING = 232, STARTSWITH = 233,
48+
ENDSWITH = 234, ISNULLOREMPTY = 235, ISNULLORWHITESPACE = 236, REMOVESTART = 237,
49+
REMOVEEND = 238, JSON = 239, VLOOKUP = 240, ARRAY = 241, ALGORITHMVERSION = 242,
50+
ADDYEARS = 243, ADDMONTHS = 244, ADDDAYS = 245, ADDHOURS = 246, ADDMINUTES = 247,
51+
ADDSECONDS = 248, TIMESTAMP = 249, HAS = 250, HASVALUE = 251, PARAM = 252, PARAMETER = 253,
52+
WS = 254, COMMENT = 255, LINE_COMMENT = 256;
53+
54+
RULE_prog = 0, RULE_expr = 1, RULE_num = 2, RULE_unit = 3, RULE_arrayJson = 4,
55+
RULE_parameter2 = 5;
5456
";
55-
var array = str.Split(" ,\r\n\t;".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
57+
var array = str.Split(",\r\n\t;".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
5658
Dictionary<string, string> dict = new Dictionary<string, string>();
59+
dict["Eof"] = "-1";
5760
foreach (var item in array) {
5861
var sp = item.Split('=');
5962
dict[sp[0].Trim()] = sp[1].Trim();
6063
}
6164

6265
var filePath = Path.GetFullPath(@"..\..\..\..\..\g4\bin\mathParser.cs");
63-
//var filePath = Path.GetFullPath(@"..\..\..\..\..\..\csharp\ToolGood.Algorithm2\math\mathParser.cs");
6466
var csText = File.ReadAllText(filePath);
6567

6668

6769

6870
csText = csText.Replace("[System.CLSCompliant(false)]", "");
69-
csText = csText.Replace("[System.CodeDom.Compiler.GeneratedCode(\"ANTLR\", \"4.9.3\")]", "");
70-
csText = csText.Replace("[System.CodeDom.Compiler.GeneratedCode(\"ANTLR\", \"4.11.1\")]", "");
71-
csText = csText.Replace("[System.Diagnostics.DebuggerNonUserCode]", "");
71+
csText = csText.Replace("[System.CodeDom.Compiler.GeneratedCode(\"ANTLR\", \"4.13.2\")]", "");
7272
csText = csText.Replace("[RuleVersion(0)]", "");
7373
csText = csText.Replace("[NotNull]", "");
74-
csText = csText.Replace(" public ITerminalNode", "//public ITerminalNode");
74+
csText = csText.Replace("[System.Diagnostics.DebuggerNonUserCode] public ITerminalNode", "//[System.Diagnostics.DebuggerNonUserCode] public ITerminalNode");
7575
csText = csText.Replace("else return visitor.VisitChildren(this);", "");
7676
csText = csText.Replace("if (typedVisitor != null) ", "");
7777

7878
csText = Regex.Replace(csText, "if \\(!\\(Precpred.*\\r\\n\\t*", "");
7979
csText = Regex.Replace(csText, "State = \\d+;\\r\\n[ \\t]+State =", "State =");
8080
csText = Regex.Replace(csText, "return GetRuleContext<ExprContext>\\(i\\);\\r\\n", "return GetRuleContext<ExprContext>(i);");
81-
csText = Regex.Replace(csText, "public ExprContext expr\\(int i\\) \\{\\r\\n", "//public ExprContext expr(int i) {");
81+
csText = Regex.Replace(csText, @"\[System.Diagnostics.DebuggerNonUserCode\] public ExprContext expr\(int i\) \{\r\n", "// [System.Diagnostics.DebuggerNonUserCode] public ExprContext expr(int i) {");
8282

8383
csText = Regex.Replace(csText, @"\bState = (\d+);\r\n[ \t]*Match\(", "Match(");
8484
csText = Regex.Replace(csText, @"\bState = (\d+);\r\n[ \t]*ErrorHandler", "ErrorHandler");
8585
csText = Regex.Replace(csText, @"public partial class mathParser", "partial class mathParser");
86+
csText = Regex.Replace(csText, @"public partial class", "internal partial class");
8687

8788

8889

89-
90-
var list = dict.Keys.ToList().OrderByDescending(q => q.Length).ToList();
90+
var list = dict.Keys.ToList().OrderByDescending(q => q.Length).ToList();
9191

9292
foreach (var item in list) {
9393
var value = dict[item];
@@ -114,12 +114,11 @@ static void Main(string[] args)
114114
//mathParser.STRING
115115
//_la==T__16
116116
}
117-
File.WriteAllText("mathParser.cs", csText);
118-
119-
120-
121117

118+
csText = csText.Replace("//[System.Diagnostics.DebuggerNonUserCode] public ITerminalNode PARAMETER()", "[System.Diagnostics.DebuggerNonUserCode] public ITerminalNode PARAMETER()");
122119

120+
csText = "namespace ToolGood.Algorithm.math\r\n{"+csText+"\r\n}";
121+
File.WriteAllText("mathParser.cs", csText);
123122
}
124123
}
125124

csharp/ToolGood.Algorithm/math/mathLexer.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,6 @@
2828
using DFA = Antlr4.Runtime.Dfa.DFA;
2929
namespace ToolGood.Algorithm.math
3030
{
31-
32-
[System.CodeDom.Compiler.GeneratedCode("ANTLR", "4.13.2")]
33-
[System.CLSCompliant(false)]
3431
partial class mathLexer : Lexer
3532
{
3633
protected static DFA[] decisionToDFA;
@@ -56,7 +53,7 @@ public mathLexer(ICharStream input, TextWriter output, TextWriter errorOutput)
5653
private static readonly string[] _SymbolicNames = { };
5754
public static readonly IVocabulary DefaultVocabulary = new Vocabulary(_LiteralNames, _SymbolicNames);
5855

59-
[NotNull]
56+
6057
public override IVocabulary Vocabulary {
6158
get {
6259
return DefaultVocabulary;

0 commit comments

Comments
 (0)