@@ -48,14 +48,10 @@ private enum ProcessorOptions
4848 private readonly ProviderInfo providerInfo ;
4949 private readonly ProcessorOptions options ;
5050
51- private readonly List < ParameterExpression > activeParameters
52- = new List < ParameterExpression > ( ) ;
53- private readonly Dictionary < ParameterExpression , IReadOnlyList < SqlExpression > > sourceMapping
54- = new Dictionary < ParameterExpression , IReadOnlyList < SqlExpression > > ( ) ;
55- private readonly Dictionary < QueryParameterIdentity , QueryParameterBinding > bindingsWithIdentity
56- = new Dictionary < QueryParameterIdentity , QueryParameterBinding > ( ) ;
57- private readonly List < QueryParameterBinding > otherBindings
58- = new List < QueryParameterBinding > ( ) ;
51+ private readonly List < ParameterExpression > activeParameters = new ( ) ;
52+ private readonly Dictionary < ParameterExpression , IReadOnlyList < SqlExpression > > sourceMapping = new ( ) ;
53+ private readonly Dictionary < QueryParameterIdentity , QueryParameterBinding > bindingsWithIdentity = new ( ) ;
54+ private readonly List < QueryParameterBinding > otherBindings = new ( ) ;
5955
6056 private bool executed ;
6157
@@ -183,7 +179,7 @@ protected override SqlExpression VisitBinary(BinaryExpression expression)
183179 {
184180 // handle x.CompareTo(y) > 0 and similar comparisons
185181 var result = TryTranslateCompareExpression ( expression ) ;
186- if ( ! result . IsNullReference ( ) ) {
182+ if ( result is not null ) {
187183 return result ;
188184 }
189185
@@ -260,7 +256,7 @@ protected override SqlExpression VisitBinary(BinaryExpression expression)
260256
261257 // handle special cases
262258 result = TryTranslateBinaryExpressionSpecialCases ( expression , left , right ) ;
263- if ( ! result . IsNullReference ( ) ) {
259+ if ( result is not null ) {
264260 return result ;
265261 }
266262
@@ -353,7 +349,7 @@ protected override SqlExpression VisitConditional(ConditionalExpression expressi
353349 : check ;
354350 var varCheck = boolCheck as SqlVariant ;
355351
356- if ( ! PreferCaseOverVariant && ! varCheck . IsNullReference ( ) ) {
352+ if ( ! PreferCaseOverVariant && varCheck is not null ) {
357353 return SqlDml . Variant ( varCheck . Id , ifFalse , ifTrue ) ;
358354 }
359355 var @case = SqlDml . Case ( ) ;
@@ -401,7 +397,7 @@ protected override SqlExpression VisitMethodCall(MethodCallExpression mc)
401397 if ( mc . AsTupleAccess ( activeParameters ) != null )
402398 return VisitTupleAccess ( mc ) ;
403399
404- var arguments = mc . Arguments . Select ( a => Visit ( a ) ) . ToArray ( ) ;
400+ var arguments = mc . Arguments . SelectToArray ( a => Visit ( a ) ) ;
405401 var mi = mc . Method ;
406402
407403 if ( mc . Object != null && mc . Object . Type != mi . ReflectedType )
@@ -434,7 +430,7 @@ protected override SqlExpression VisitLambda(LambdaExpression l)
434430 if ( activeParameters . Count > 0 )
435431 throw new InvalidOperationException ( ) ;
436432 activeParameters . AddRange ( l . Parameters ) ;
437- for ( int i = 0 ; i < l . Parameters . Count ; i ++ ) {
433+ for ( int i = 0 , count = l . Parameters . Count ; i < count ; i ++ ) {
438434 var p = l . Parameters [ i ] ;
439435 sourceMapping [ p ] = sourceColumns [ i ] ;
440436 }
@@ -447,14 +443,14 @@ protected override SqlExpression VisitLambda(LambdaExpression l)
447443
448444 protected override SqlExpression VisitNew ( NewExpression n )
449445 {
450- return CompileMember ( n . Constructor , null , n . Arguments . Select ( a => Visit ( a ) ) . ToArray ( ) ) ;
446+ return CompileMember ( n . Constructor , null , n . Arguments . SelectToArray ( a => Visit ( a ) ) ) ;
451447 }
452448
453449 protected override SqlExpression VisitNewArray ( NewArrayExpression expression )
454450 {
455451 if ( expression . NodeType != ExpressionType . NewArrayInit )
456452 throw new NotSupportedException ( ) ;
457- var expressions = expression . Expressions . Select ( e => Visit ( e ) ) . ToArray ( ) ;
453+ var expressions = expression . Expressions . SelectToArray ( e => Visit ( e ) ) ;
458454 return SqlDml . Container ( expressions ) ;
459455 }
460456
@@ -496,7 +492,7 @@ public ExpressionProcessor(LambdaExpression lambda,
496492
497493 if ( lambda . Parameters . Count != sourceColumns . Length )
498494 throw Exceptions . InternalError ( Strings . ExParametersCountIsNotSameAsSourceColumnListsCount , OrmLog . Instance ) ;
499- if ( sourceColumns . Any ( list => list . Any ( c => c . IsNullReference ( ) ) ) )
495+ if ( sourceColumns . Any ( list => list . Any ( c => c is null ) ) )
500496 throw Exceptions . InternalError ( Strings . ExSourceColumnListContainsNullValues , OrmLog . Instance ) ;
501497
502498 this . compiler = compiler ; // This might be null, check before use!
0 commit comments