in src/Kusto.Language/Binder/Binder.cs [1791:1908]
private static OperatorKind GetOperatorKind(SyntaxKind kind)
{
switch (kind)
{
case SyntaxKind.AddExpression:
return OperatorKind.Add;
case SyntaxKind.SubtractExpression:
return OperatorKind.Subtract;
case SyntaxKind.MultiplyExpression:
return OperatorKind.Multiply;
case SyntaxKind.DivideExpression:
return OperatorKind.Divide;
case SyntaxKind.ModuloExpression:
return OperatorKind.Modulo;
case SyntaxKind.UnaryMinusExpression:
return OperatorKind.UnaryMinus;
case SyntaxKind.UnaryPlusExpression:
return OperatorKind.UnaryPlus;
case SyntaxKind.EqualExpression:
return OperatorKind.Equal;
case SyntaxKind.NotEqualExpression:
return OperatorKind.NotEqual;
case SyntaxKind.LessThanExpression:
return OperatorKind.LessThan;
case SyntaxKind.LessThanOrEqualExpression:
return OperatorKind.LessThanOrEqual;
case SyntaxKind.GreaterThanExpression:
return OperatorKind.GreaterThan;
case SyntaxKind.GreaterThanOrEqualExpression:
return OperatorKind.GreaterThanOrEqual;
case SyntaxKind.EqualTildeExpression:
return OperatorKind.EqualTilde;
case SyntaxKind.BangTildeExpression:
return OperatorKind.BangTilde;
case SyntaxKind.HasExpression:
return OperatorKind.Has;
case SyntaxKind.HasCsExpression:
return OperatorKind.HasCs;
case SyntaxKind.NotHasExpression:
return OperatorKind.NotHas;
case SyntaxKind.NotHasCsExpression:
return OperatorKind.NotHasCs;
case SyntaxKind.HasPrefixExpression:
return OperatorKind.HasPrefix;
case SyntaxKind.HasPrefixCsExpression:
return OperatorKind.HasPrefixCs;
case SyntaxKind.NotHasPrefixExpression:
return OperatorKind.NotHasPrefix;
case SyntaxKind.NotHasPrefixCsExpression:
return OperatorKind.NotHasPrefixCs;
case SyntaxKind.HasSuffixExpression:
return OperatorKind.HasSuffix;
case SyntaxKind.HasSuffixCsExpression:
return OperatorKind.HasSuffixCs;
case SyntaxKind.NotHasSuffixExpression:
return OperatorKind.NotHasSuffix;
case SyntaxKind.NotHasSuffixCsExpression:
return OperatorKind.NotHasSuffixCs;
case SyntaxKind.LikeExpression:
return OperatorKind.Like;
case SyntaxKind.LikeCsExpression:
return OperatorKind.LikeCs;
case SyntaxKind.NotLikeExpression:
return OperatorKind.NotLike;
case SyntaxKind.NotLikeCsExpression:
return OperatorKind.NotLikeCs;
case SyntaxKind.ContainsExpression:
return OperatorKind.Contains;
case SyntaxKind.ContainsCsExpression:
return OperatorKind.ContainsCs;
case SyntaxKind.NotContainsExpression:
return OperatorKind.NotContains;
case SyntaxKind.NotContainsCsExpression:
return OperatorKind.NotContainsCs;
case SyntaxKind.StartsWithExpression:
return OperatorKind.StartsWith;
case SyntaxKind.StartsWithCsExpression:
return OperatorKind.StartsWithCs;
case SyntaxKind.NotStartsWithExpression:
return OperatorKind.NotStartsWith;
case SyntaxKind.NotStartsWithCsExpression:
return OperatorKind.NotStartsWithCs;
case SyntaxKind.EndsWithExpression:
return OperatorKind.EndsWith;
case SyntaxKind.EndsWithCsExpression:
return OperatorKind.EndsWithCs;
case SyntaxKind.NotEndsWithExpression:
return OperatorKind.NotEndsWith;
case SyntaxKind.NotEndsWithCsExpression:
return OperatorKind.NotEndsWith;
case SyntaxKind.MatchesRegexExpression:
return OperatorKind.MatchRegex;
case SyntaxKind.InExpression:
return OperatorKind.In;
case SyntaxKind.InCsExpression:
return OperatorKind.InCs;
case SyntaxKind.NotInExpression:
return OperatorKind.NotIn;
case SyntaxKind.NotInCsExpression:
return OperatorKind.NotInCs;
case SyntaxKind.BetweenExpression:
return OperatorKind.Between;
case SyntaxKind.NotBetweenExpression:
return OperatorKind.NotBetween;
case SyntaxKind.AndExpression:
return OperatorKind.And;
case SyntaxKind.OrExpression:
return OperatorKind.Or;
case SyntaxKind.SearchExpression:
return OperatorKind.Search;
case SyntaxKind.HasAnyExpression:
return OperatorKind.HasAny;
case SyntaxKind.HasAllExpression:
return OperatorKind.HasAll;
default:
return OperatorKind.None;
}
}