Changeset 18180 for branches/3138_Shape_Constraints_Transformations/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Importer/Token.cs
- Timestamp:
- 01/10/22 10:15:25 (3 years ago)
- Location:
- branches/3138_Shape_Constraints_Transformations
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3138_Shape_Constraints_Transformations
- Property svn:mergeinfo changed
-
branches/3138_Shape_Constraints_Transformations/HeuristicLab.Problems.DataAnalysis.Symbolic
- Property svn:mergeinfo changed
-
branches/3138_Shape_Constraints_Transformations/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Importer/Token.cs
r17180 r18180 23 23 24 24 namespace HeuristicLab.Problems.DataAnalysis.Symbolic { 25 internal enum TokenSymbol { LPAR, RPAR, SYMB, NUMBER }; 25 internal enum TokenSymbol { 26 LPAR, RPAR, SYMB, CONSTANT, 27 NUM, // num 28 EQ, // = 29 LBRACKET, // < 30 RBRACKET // > 31 }; 26 32 internal class Token { 27 33 public static readonly Token LPAR = Token.Parse("("); 28 34 public static readonly Token RPAR = Token.Parse(")"); 35 public static readonly Token LBRACKET = Token.Parse("<"); 36 public static readonly Token RBRACKET = Token.Parse(">"); 37 public static readonly Token EQ = Token.Parse("="); 38 public static readonly Token NUM = Token.Parse("num"); 29 39 30 40 public TokenSymbol Symbol { get; set; } … … 46 56 public static Token Parse(string strToken) { 47 57 strToken = strToken.Trim(); 48 Tokent = new Token();58 var t = new Token(); 49 59 t.StringValue = strToken.Trim(); 50 double temp;51 60 if (strToken == "") { 52 61 t = null; … … 55 64 } else if (strToken == ")") { 56 65 t.Symbol = TokenSymbol.RPAR; 57 } else if (double.TryParse(strToken, NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out temp)) { 58 t.Symbol = TokenSymbol.NUMBER; 59 t.DoubleValue = double.Parse(strToken, CultureInfo.InvariantCulture.NumberFormat); 66 } else if (strToken == "<") { 67 t.Symbol = TokenSymbol.LBRACKET; 68 } else if (strToken == ">") { 69 t.Symbol = TokenSymbol.RBRACKET; 70 } else if (strToken == "=") { 71 t.Symbol = TokenSymbol.EQ; 72 } else if (strToken.ToLower() == "num") { 73 t.Symbol = TokenSymbol.NUM; 74 } else if (double.TryParse(strToken, NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out var val)) { 75 t.Symbol = TokenSymbol.CONSTANT; 76 t.DoubleValue = val; 60 77 } else { 61 78 t.Symbol = TokenSymbol.SYMB;
Note: See TracChangeset
for help on using the changeset viewer.