• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

vortex-data / vortex / 16346308995

17 Jul 2025 01:22PM UTC coverage: 80.52% (-0.2%) from 80.704%
16346308995

Pull #3810

github

web-flow
Merge 739d6a878 into d53d06603
Pull Request #3810: WIP feat: add ViewLayout for variable length views

316 of 533 new or added lines in 17 files covered. (59.29%)

9 existing lines in 4 files now uncovered.

42186 of 52392 relevant lines covered (80.52%)

155983.18 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

76.92
/vortex-layout/src/layouts/view/reader/array.rs
1
//  SPDX-License-Identifier: Apache-2.0
2
//  SPDX-FileCopyrightText: Copyright the Vortex contributors
3

4
use vortex_array::compute::filter;
5
use vortex_array::{ArrayRef, IntoArray};
6
use vortex_error::VortexResult;
7
use vortex_expr::{Scope, is_root};
8
use vortex_mask::Mask;
9

10
use crate::ArrayEvaluation;
11
use crate::layouts::view::ViewEvaluation;
12

13
#[async_trait::async_trait]
14
impl ArrayEvaluation for ViewEvaluation {
15
    async fn invoke(&self, mask: Mask) -> VortexResult<ArrayRef> {
2✔
16
        let mut array = self.build_array(&mask).await?.into_array();
1✔
17

18
        // Slice the array based on the row mask.
19
        if self.row_range.start > 0 || self.row_range.end < array.len() {
1✔
NEW
20
            array = array.slice(self.row_range.start, self.row_range.end)?;
×
21
        }
1✔
22

23
        // Filter the array based on the row mask.
24
        if !mask.all_true() {
1✔
25
            array = filter(&array, &mask)?;
1✔
NEW
26
        }
×
27

28
        // Evaluate the projection expression.
29
        if !is_root(&self.expr) {
1✔
NEW
30
            array = self.expr.evaluate(&Scope::new(array))?;
×
31
        }
1✔
32

33
        Ok(array)
1✔
34
    }
2✔
35
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc