public void ParseStringToLists() { string newValue = string.Empty; string lastOperand = string.Empty; for (int i = 0; i < Value.Length; i++) { if (i == 0 && Value[i] == NEGATIVE) { newValue += Value[i]; continue; } updateBracketsBalance(Value[i]); if (bracketsBalance == 0 && (isBracketOpening(Value[i]) || isBracketClosing(Value[i]))) { continue; } if (Value[i] == ADD || Value[i] == SUBTRACT) { if (i == 0 || i == Value.Length - 1) { continue; } ParsedValues.Add(new ParsedSet(newValue, lastOperand)); lastOperand = Value[i].ToString(); } else { newValue += Value[i]; } } }
public void FillAllInfo() { IsValid = LineHelper.IsValid(Source); if (!IsValid) { return; } SourceValues = LineHelper.Separate(Source); if (SourceValues.Any()) { ParsedValues = LineHelper.Parse(SourceValues).ToList(); } if (ParsedValues.Any()) { Sum = ParsedValues.Sum(); } }