global: MASSIVE snapshot

This commit is contained in:
nym21
2026-01-07 01:16:37 +01:00
parent e832ffbe23
commit cb0abc324e
487 changed files with 21155 additions and 13627 deletions

View File

@@ -0,0 +1,30 @@
use brk_error::Result;
use brk_traversable::Traversable;
use derive_more::{Deref, DerefMut};
use schemars::JsonSchema;
use vecdb::{Database, EagerVec, ImportableVec, PcoVec, VecIndex, Version};
use crate::internal::ComputedVecValue;
/// Sum of values in an aggregation period
#[derive(Clone, Deref, DerefMut, Traversable)]
#[traversable(wrap = "sum")]
pub struct SumVec<I: VecIndex, T: ComputedVecValue + JsonSchema>(
pub EagerVec<PcoVec<I, T>>,
);
impl<I: VecIndex, T: ComputedVecValue + JsonSchema> SumVec<I, T> {
pub fn forced_import(db: &Database, name: &str, version: Version) -> Result<Self> {
Ok(Self(EagerVec::forced_import(db, &format!("{name}_sum"), version)?))
}
/// Import with raw name (no suffix) for backwards compat
pub fn forced_import_raw(db: &Database, name: &str, version: Version) -> Result<Self> {
Ok(Self(EagerVec::forced_import(db, name, version)?))
}
#[inline]
pub fn inner(&self) -> &EagerVec<PcoVec<I, T>> {
&self.0
}
}