Changeset 18065 for branches/3136_Structural_GP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Importer/InfixExpressionParser.cs
- Timestamp:
- 10/08/21 16:28:53 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3136_Structural_GP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Importer/InfixExpressionParser.cs
r18062 r18065 453 453 laggedVarNode.Lag = (int)Math.Round(sign * lagToken.doubleVal); 454 454 laggedVarNode.Weight = 1.0; 455 } else if (funcNode.Symbol is SubFunctionSymbol) { 456 var subFunction = funcNode as SubFunctionTreeNode; 457 // input arguments 458 var args = ParseArgList(tokens); 459 IList<string> functionArguments = new List<string>(); 460 foreach (var arg in args) 461 if(arg is VariableTreeNode varTreeNode) 462 functionArguments.Add(varTreeNode.VariableName); 463 subFunction.FunctionArguments = functionArguments; 455 464 } else { 456 465 // functions … … 458 467 // check number of arguments 459 468 if (funcNode.Symbol.MinimumArity > args.Length || funcNode.Symbol.MaximumArity < args.Length) { 460 throw new ArgumentException(string.Format("Symbol {0} requires between {1} and 469 throw new ArgumentException(string.Format("Symbol {0} requires between {1} and {2} arguments.", funcId, 461 470 funcNode.Symbol.MinimumArity, funcNode.Symbol.MaximumArity)); 462 471 }
Note: See TracChangeset
for help on using the changeset viewer.