@@ -6,30 +6,32 @@ use std::ops::Not;
66
77use vortex_dtype:: DType ;
88use vortex_dtype:: Nullability ;
9+ use vortex_error:: vortex_bail;
910use vortex_error:: VortexExpect ;
1011use vortex_error:: VortexResult ;
11- use vortex_error:: vortex_bail;
1212use vortex_mask:: Mask ;
13+ use vortex_vector:: bool:: BoolVector ;
1314use vortex_vector:: Vector ;
1415use vortex_vector:: VectorOps ;
15- use vortex_vector:: bool:: BoolVector ;
1616
17- use crate :: Array ;
18- use crate :: ArrayRef ;
19- use crate :: IntoArray ;
2017use crate :: arrays:: BoolArray ;
2118use crate :: arrays:: ConstantArray ;
22- use crate :: expr:: ChildName ;
19+ use crate :: expr:: exprs:: binary:: eq;
20+ use crate :: expr:: exprs:: literal:: lit;
21+ use crate :: expr:: functions:: EmptyOptions ;
22+ use crate :: expr:: stats:: Stat ;
2323use crate :: expr:: ExecutionArgs ;
2424use crate :: expr:: ExprId ;
2525use crate :: expr:: Expression ;
2626use crate :: expr:: ExpressionView ;
2727use crate :: expr:: StatsCatalog ;
2828use crate :: expr:: VTable ;
2929use crate :: expr:: VTableExt ;
30- use crate :: expr:: exprs:: binary:: eq;
31- use crate :: expr:: exprs:: literal:: lit;
32- use crate :: expr:: stats:: Stat ;
30+ use crate :: expr:: { ChildName , ScalarFnExprExt } ;
31+ use crate :: scalar_fns:: is_null;
32+ use crate :: Array ;
33+ use crate :: ArrayRef ;
34+ use crate :: IntoArray ;
3335
3436/// Expression that checks for null values.
3537pub struct IsNull ;
@@ -110,6 +112,10 @@ impl VTable for IsNull {
110112 fn is_fallible ( & self , _instance : & Self :: Instance ) -> bool {
111113 false
112114 }
115+
116+ fn expr_v2 ( & self , view : & ExpressionView < Self > ) -> VortexResult < Expression > {
117+ ScalarFnExprExt :: try_new_expr ( & is_null:: IsNull , EmptyOptions , view. children ( ) . clone ( ) )
118+ }
113119}
114120
115121/// Creates an expression that checks for null values.
@@ -138,7 +144,6 @@ mod tests {
138144 use vortex_utils:: aliases:: hash_set:: HashSet ;
139145
140146 use super :: is_null;
141- use crate :: IntoArray ;
142147 use crate :: arrays:: PrimitiveArray ;
143148 use crate :: arrays:: StructArray ;
144149 use crate :: expr:: exprs:: binary:: eq;
@@ -149,6 +154,7 @@ mod tests {
149154 use crate :: expr:: pruning:: checked_pruning_expr;
150155 use crate :: expr:: stats:: Stat ;
151156 use crate :: expr:: test_harness;
157+ use crate :: IntoArray ;
152158
153159 #[ test]
154160 fn dtype ( ) {
0 commit comments