private static bool BracketsMatch(Token open, Token close) { return (open.Type == "(" && close.Type == ")") || (open.Type == "[" && close.Type == "]"); }
private bool TryGetOperator(TextReader input, char ch, out Token token) { var next = (char)input.Peek(); if (IsOperator(ch + next.ToString())) { token = CreateToken(ch.ToString() + (char)input.Read()); return true; } if (IsOperator(ch.ToString())) { token = CreateToken(ch); return true; } token = null; return false; }