@@ -212,7 +212,6 @@ private static CountAggregator GetOneAggregator(IRow row, ColumnType colType, in
212
212
}
213
213
214
214
private static CountAggregator GetOneAggregator < T > ( IRow row , ColumnType colType , int colSrc )
215
- where T : IEquatable < T >
216
215
{
217
216
return new CountAggregator < T > ( colType , row . GetGetter < T > ( colSrc ) ) ;
218
217
}
@@ -225,7 +224,6 @@ private static CountAggregator GetVecAggregator(IRow row, ColumnType colType, in
225
224
}
226
225
227
226
private static CountAggregator GetVecAggregator < T > ( IRow row , ColumnType colType , int colSrc )
228
- where T : IEquatable < T >
229
227
{
230
228
return new CountAggregator < T > ( colType , row . GetGetter < VBuffer < T > > ( colSrc ) ) ;
231
229
}
@@ -237,7 +235,6 @@ private abstract class CountAggregator
237
235
}
238
236
239
237
private sealed class CountAggregator < T > : CountAggregator , IColumnAggregator < VBuffer < T > >
240
- where T : IEquatable < T >
241
238
{
242
239
private readonly long [ ] _count ;
243
240
private readonly Action _fillBuffer ;
@@ -258,7 +255,8 @@ public CountAggregator(ColumnType type, ValueGetter<T> getter)
258
255
_buffer . Values [ 0 ] = t ;
259
256
} ;
260
257
_isDefault = Conversions . Instance . GetIsDefaultPredicate < T > ( type ) ;
261
- _isMissing = Conversions . Instance . GetIsNAPredicate < T > ( type ) ;
258
+ if ( ! Conversions . Instance . TryGetIsNAPredicate < T > ( type , out _isMissing ) )
259
+ _isMissing = ( ref T value ) => false ;
262
260
}
263
261
264
262
public CountAggregator ( ColumnType type , ValueGetter < VBuffer < T > > getter )
@@ -268,7 +266,8 @@ public CountAggregator(ColumnType type, ValueGetter<VBuffer<T>> getter)
268
266
_count = new long [ size ] ;
269
267
_fillBuffer = ( ) => getter ( ref _buffer ) ;
270
268
_isDefault = Conversions . Instance . GetIsDefaultPredicate < T > ( type . ItemType ) ;
271
- _isMissing = Conversions . Instance . GetIsNAPredicate < T > ( type . ItemType ) ;
269
+ if ( ! Conversions . Instance . TryGetIsNAPredicate < T > ( type . ItemType , out _isMissing ) )
270
+ _isMissing = ( ref T value ) => false ;
272
271
}
273
272
274
273
public override long [ ] Count
0 commit comments