private bool IsStopSymbol(Token token) { if (token.Type != TokenType.Symbol) return false; switch (token.Fragment[0]) { case ',': case '!': return true; default: return false; } }
private Token FixIndex(ref int index, Token token) { token.Index = index; index += token.Fragment.Length; return token; }
protected virtual bool IsStartToken(Token token) { return token.Type == TokenType.Element && token.Fragment.StartsWith(StartFragment, StringComparison.OrdinalIgnoreCase); }