static Memory.Variable Solve(SubExpr subExpr) { var rt = Solve(subExpr.add); if (subExpr.signal != null && subExpr.signal == "-") { rt.Value *= -1; } return(rt); }
static SubExpr CreateSubExpr(ParsingInfo info) { SubExpr expr = new SubExpr(); foreach (var pair in info) { if (pair.Key == "Add") { expr.add = CreateExpression(pair.Value.AsChild); } else if (pair.Key == "signal") { var token = pair.Value.AsToken as SymbolToken; expr.signal = token.Value; } else { Console.WriteLine("SubExpr has '" + pair.Key + "'"); } } return(expr); }