@@ -7,14 +7,19 @@ use vortex_error::VortexResult;
77use vortex_expr:: pruning:: PruningPredicate ;
88use vortex_expr:: ExprRef ;
99use vortex_scalar:: Scalar ;
10- use vortex_scan:: { AsyncEvaluator , RowMask } ;
10+ use vortex_scan:: RowMask ;
1111
1212use crate :: layouts:: chunked:: reader:: ChunkedReader ;
1313use crate :: reader:: LayoutScanExt ;
14+ use crate :: ExprEvaluator ;
1415
1516#[ async_trait( ?Send ) ]
16- impl AsyncEvaluator for ChunkedReader {
17- async fn evaluate ( self : & Self , row_mask : RowMask , expr : ExprRef ) -> VortexResult < ArrayData > {
17+ impl ExprEvaluator for ChunkedReader {
18+ async fn evaluate_expr (
19+ self : & Self ,
20+ row_mask : RowMask ,
21+ expr : ExprRef ,
22+ ) -> VortexResult < ArrayData > {
1823 // Compute the result dtype of the expression.
1924 let dtype = expr
2025 . evaluate ( & Canonical :: empty ( self . dtype ( ) ) ?. into_array ( ) ) ?
@@ -74,7 +79,7 @@ impl AsyncEvaluator for ChunkedReader {
7479 . shift ( chunk_range. start ) ?;
7580
7681 let expr = expr. clone ( ) ;
77- chunks. push ( chunk_reader. evaluate ( chunk_mask, expr) . boxed_local ( ) ) ;
82+ chunks. push ( chunk_reader. evaluate_expr ( chunk_mask, expr) . boxed_local ( ) ) ;
7883 }
7984
8085 // Wait for all chunks to be evaluated
@@ -130,7 +135,7 @@ mod test {
130135 let result = layout
131136 . reader ( segments, Default :: default ( ) )
132137 . unwrap ( )
133- . evaluate (
138+ . evaluate_expr (
134139 RowMask :: new_valid_between ( 0 , layout. row_count ( ) ) ,
135140 Identity :: new_expr ( ) ,
136141 )
@@ -155,7 +160,7 @@ mod test {
155160 let expr = gt ( Identity :: new_expr ( ) , lit ( 7 ) ) ;
156161
157162 let result = reader
158- . evaluate ( RowMask :: new_valid_between ( 0 , row_count) , expr. clone ( ) )
163+ . evaluate_expr ( RowMask :: new_valid_between ( 0 , row_count) , expr. clone ( ) )
159164 . await
160165 . unwrap ( ) ;
161166 let result = ChunkedArray :: try_from ( result) . unwrap ( ) ;
0 commit comments