Skip to content

Commit 53987fb

Browse files
committed
Simple code.
1 parent 8c148be commit 53987fb

File tree

1 file changed

+22
-23
lines changed

1 file changed

+22
-23
lines changed

Provider/src/FirebirdSql.EntityFrameworkCore.Firebird/Query/ExpressionTranslators/Internal/FbEndsWithOptimizedTranslator.cs

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -28,31 +28,30 @@ class FbEndsWithOptimizedTranslator : IMethodCallTranslator
2828

2929
public virtual Expression Translate(MethodCallExpression methodCallExpression)
3030
{
31-
if (methodCallExpression.Method.Equals(MethodInfo))
32-
{
33-
var patternExpression = methodCallExpression.Arguments[0];
31+
if (!methodCallExpression.Method.Equals(MethodInfo))
32+
return null;
3433

35-
var endsWithExpression = new NullCompensatedExpression(
36-
Expression.Equal(
37-
new SqlFunctionExpression(
38-
"RIGHT",
39-
methodCallExpression.Object.Type,
40-
new[]
41-
{
42-
methodCallExpression.Object,
43-
new SqlFunctionExpression("CHARACTER_LENGTH", typeof(int), new[] { patternExpression })
44-
}),
45-
patternExpression));
34+
var patternExpression = methodCallExpression.Arguments[0];
4635

47-
return patternExpression is ConstantExpression patternConstantExpression
48-
? (string)patternConstantExpression.Value == string.Empty
49-
? (Expression)Expression.Constant(true)
50-
: endsWithExpression
51-
: Expression.OrElse(
52-
endsWithExpression,
53-
Expression.Equal(patternExpression, Expression.Constant(string.Empty)));
54-
}
55-
return null;
36+
var endsWithExpression = new NullCompensatedExpression(
37+
Expression.Equal(
38+
new SqlFunctionExpression(
39+
"RIGHT",
40+
methodCallExpression.Object.Type,
41+
new[]
42+
{
43+
methodCallExpression.Object,
44+
new SqlFunctionExpression("CHARACTER_LENGTH", typeof(int), new[] { patternExpression })
45+
}),
46+
patternExpression));
47+
48+
return patternExpression is ConstantExpression patternConstantExpression
49+
? (string)patternConstantExpression.Value == string.Empty
50+
? (Expression)Expression.Constant(true)
51+
: endsWithExpression
52+
: Expression.OrElse(
53+
endsWithExpression,
54+
Expression.Equal(patternExpression, Expression.Constant(string.Empty)));
5655
}
5756
}
5857
}

0 commit comments

Comments
 (0)