Coverage Report

Created: 2026-10-20 21:00

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/home/runner/work/rdflib-turbo/rdflib-turbo/src/inference/delta.rs
Line
Count
Source
1
//! Export additions from the insertion journal before committing inference.
2
3
use oxigraph::model::{Dataset, GraphName, Quad};
4
5
use super::expand_inner;
6
use crate::Result;
7
8
68
pub(crate) fn expand_delta(
9
68
    data: &mut Dataset,
10
68
    mode: &str,
11
68
    destination: Option<GraphName>,
12
68
) -> Result<Dataset> {
13
2.26k
    if destination.is_none() && data.iter().all(|quad| quad.graph_name.is_default_graph()) {
_RNCNvNtNtCsdf2iE05Vi7R_7__native9inference5delta12expand_delta0B7_
Line
Count
Source
13
2.26k
    if destination.is_none() && data.iter().all(|quad| quad.graph_name.is_default_graph()) {
Unexecuted instantiation: _RNCNvNtNtCst8hUZK1Frn_7__native9inference5delta12expand_delta0B7_
14
9
        let mut transaction = data.insert_transaction();
15
9
        expand_inner(&mut transaction, mode)?;
16
        // The returned dataset owns only derived output, never a base snapshot.
17
8
        let delta = transaction.inserted().collect();
18
8
        transaction.commit();
19
8
        return Ok(delta);
20
59
    }
21
22
    // Retain Dataset inference's existing union semantics for named contexts.
23
59
    let mut union = crate::graph::with_union(data);
24
59
    let mut union_transaction = union.insert_transaction();
25
59
    expand_inner(&mut union_transaction, mode)?;
26
56
    let destination = destination.unwrap_or(GraphName::DefaultGraph);
27
56
    let mut transaction = data.insert_transaction();
28
3.47k
    for quad in union_transaction.inserted() {
29
3.47k
        transaction.insert(&Quad::new(
30
3.47k
            quad.subject,
31
3.47k
            quad.predicate,
32
3.47k
            quad.object,
33
3.47k
            destination.clone(),
34
3.47k
        ));
35
3.47k
    }
36
    // The base journal excludes any exact quad already present at destination.
37
56
    let delta = transaction.inserted().collect();
38
56
    union_transaction.commit();
39
56
    transaction.commit();
40
56
    Ok(delta)
41
68
}
_RNvNtNtCsdf2iE05Vi7R_7__native9inference5delta12expand_delta
Line
Count
Source
8
68
pub(crate) fn expand_delta(
9
68
    data: &mut Dataset,
10
68
    mode: &str,
11
68
    destination: Option<GraphName>,
12
68
) -> Result<Dataset> {
13
68
    if destination.is_none() && data.iter().all(|quad| quad.graph_name.is_default_graph()) {
14
9
        let mut transaction = data.insert_transaction();
15
9
        expand_inner(&mut transaction, mode)?;
16
        // The returned dataset owns only derived output, never a base snapshot.
17
8
        let delta = transaction.inserted().collect();
18
8
        transaction.commit();
19
8
        return Ok(delta);
20
59
    }
21
22
    // Retain Dataset inference's existing union semantics for named contexts.
23
59
    let mut union = crate::graph::with_union(data);
24
59
    let mut union_transaction = union.insert_transaction();
25
59
    expand_inner(&mut union_transaction, mode)?;
26
56
    let destination = destination.unwrap_or(GraphName::DefaultGraph);
27
56
    let mut transaction = data.insert_transaction();
28
3.47k
    for quad in union_transaction.inserted() {
29
3.47k
        transaction.insert(&Quad::new(
30
3.47k
            quad.subject,
31
3.47k
            quad.predicate,
32
3.47k
            quad.object,
33
3.47k
            destination.clone(),
34
3.47k
        ));
35
3.47k
    }
36
    // The base journal excludes any exact quad already present at destination.
37
56
    let delta = transaction.inserted().collect();
38
56
    union_transaction.commit();
39
56
    transaction.commit();
40
56
    Ok(delta)
41
68
}
Unexecuted instantiation: _RNvNtNtCst8hUZK1Frn_7__native9inference5delta12expand_delta