Skip to main content

swls_core/
store.rs

1use bevy_ecs::prelude::*;
2use tracing::debug;
3
4use crate::prelude::*;
5
6#[derive(Resource)]
7pub struct Store(pub oxigraph::store::Store);
8
9pub fn load_store(
10    query: Query<(&Triples, &Label), (Added<Triples>, Without<Open>)>,
11    store: Res<Store>,
12) {
13    let mut loader = store.0.bulk_loader();
14    for (t, label) in query {
15        let _ = loader.load_quads(t.0.iter().map(|x| x.into_oxi(None)).flatten());
16        debug!("Loading {} triples from {}", t.len(), label.as_str());
17    }
18    let _ = loader.commit();
19}