private static bool IsFunctionName(string tok) { char begin = tok[0]; bool isIdentifier = char.IsLetter(begin) || begin.CompareTo('$') == 0 || begin.CompareTo('_') == 0 || '"' == begin; return(isIdentifier && !Formatter.Logical.Contains(tok) && !EndClauses.Contains(tok) && !Quantifiers.Contains(tok) && !Dml.Contains(tok) && !Formatter.Misc.Contains(tok)); }
public string Perform() { _result.Append(Initial); while (_tokens.MoveNext()) { _token = _tokens.Current; _lcToken = _token.ToLowerInvariant(); if ("'".Equals(_token)) { ExtractStringEnclosedBy("'"); } else if ("\"".Equals(_token)) { ExtractStringEnclosedBy("\""); } if (IsMultiQueryDelimiter(_token)) { StartingNewQuery(); } else if (_afterByOrSetOrFromOrSelect && ",".Equals(_token)) { CommaAfterByOrFromOrSelect(); } else if (_afterOn && ",".Equals(_token)) { CommaAfterOn(); } else if ("(".Equals(_token)) { OpenParen(); } else if (")".Equals(_token)) { CloseParen(); } else if (BeginClauses.Contains(_lcToken)) { BeginNewClause(); } else if (EndClauses.Contains(_lcToken)) { EndNewClause(); } else if ("select".Equals(_lcToken)) { Select(); } else if (Dml.Contains(_lcToken)) { UpdateOrInsertOrDelete(); } else if ("values".Equals(_lcToken)) { Values(); } else if ("on".Equals(_lcToken)) { On(); } else if (_afterBetween && _lcToken.Equals("and")) { Misc(); _afterBetween = false; } else if (Formatter.Logical.Contains(_lcToken)) { Logical(); } else if (IsWhitespace(_token)) { White(); } else { Misc(); } if (!IsWhitespace(_token)) { _lastToken = _lcToken; } } return(_result.ToString()); }