@@ -36,47 +36,51 @@ public bool TryAdd(FilterProvider filter)
3636
3737 public void AliasColumns ( AliasProvider provider )
3838 {
39- if ( owner . State . Predicates . Count > 0 )
39+ if ( CheckPredicatesExist ( ) ) {
4040 owner . State . Predicates = collectorHelper . GenericAliasColumns ( provider , owner . State . Predicates ) ;
41+ }
4142 }
4243
4344 public void ValidateAggregatedColumns ( AggregateProvider provider )
4445 {
45- if ( owner . State . Predicates . Count == 0 )
46- return ;
47- foreach ( var parameterPair in owner . State . Predicates )
48- foreach ( var predicatePair in parameterPair . Value )
49- foreach ( var column in predicatePair . Second )
50- if ( provider . GroupColumnIndexes . Contains ( column . Index ) )
51- ApplyProviderCorrectorRewriter . ThrowInvalidOperationException (
52- Strings . ExColumnsUsedByPredicateContainingApplyParameterAreRemoved ) ;
53-
46+ if ( CheckPredicatesExist ( ) ) {
47+ foreach ( var parameterPair in owner . State . Predicates )
48+ foreach ( var predicatePair in parameterPair . Value )
49+ foreach ( var column in predicatePair . Item2 )
50+ if ( provider . GroupColumnIndexes . Contains ( column . Index ) ) {
51+ ApplyProviderCorrectorRewriter . ThrowInvalidOperationException (
52+ Strings . ExColumnsUsedByPredicateContainingApplyParameterAreRemoved ) ;
53+ }
54+ }
5455 }
5556
5657 public void ValidateSelectedColumnIndexes ( SelectProvider provider )
5758 {
58- if ( owner . State . Predicates . Count == 0 )
59- return ;
60- collectorHelper . ValidateNewColumnIndexes ( owner . State . Predicates , provider . Header . Columns ,
61- Strings . ExColumnsUsedByPredicateContainingApplyParameterAreRemoved ) ;
59+ if ( CheckPredicatesExist ( ) ) {
60+ collectorHelper . ValidateNewColumnIndexes ( owner . State . Predicates ,
61+ provider . Header . Columns ,
62+ ( ) => Strings . ExColumnsUsedByPredicateContainingApplyParameterAreRemoved ) ;
63+ }
6264 }
6365
6466 #region Private \ internal methods
6567
6668 private void SaveApplyPredicate ( FilterProvider filter , ApplyParameter applyParameter )
6769 {
68- if ( owner . State . Predicates . ContainsKey ( applyParameter ) )
70+ if ( owner . State . Predicates . ContainsKey ( applyParameter ) ) {
6971 owner . State . Predicates [ applyParameter ]
70- . Add ( new Pair < Expression < Func < Tuple , bool > > , ColumnCollection > ( filter . Predicate ,
71- filter . Header . Columns ) ) ;
72+ . Add ( ( filter . Predicate , filter . Header . Columns ) ) ;
73+ }
7274 else {
73- var newPair = new Pair < Expression < Func < Tuple , bool > > , ColumnCollection > ( filter . Predicate ,
74- filter . Header . Columns ) ;
7575 owner . State . Predicates . Add ( applyParameter ,
76- new List < Pair < Expression < Func < Tuple , bool > > , ColumnCollection > > { newPair } ) ;
76+ new List < ( Expression < Func < Tuple , bool > > , ColumnCollection ) > { ( filter . Predicate , filter . Header . Columns ) } ) ;
7777 }
7878 }
7979
80+ [ System . Runtime . CompilerServices . MethodImpl ( System . Runtime . CompilerServices . MethodImplOptions . AggressiveInlining ) ]
81+ private bool CheckPredicatesExist ( ) =>
82+ owner . State . Predicates . Count > 0 ;
83+
8084 #endregion
8185
8286
0 commit comments