uqa-core 0.4.0

Document sets, finite-support relations, posting storage, and value types for UQA
Documentation
//
// Unified Query Algebra
//
// Copyright (c) 2023-2026 Cognica, Inc.
//

//! A catalog object's durable incarnation and public address, independent of its display name.

#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
#[serde(deny_unknown_fields)]
pub struct CatalogObjectIdentity {
    pub object_id: [u8; 16],
    pub oid: i64,
}

impl CatalogObjectIdentity {
    pub fn is_valid(self) -> bool {
        self.object_id != [0; 16] && u32::try_from(self.oid).is_ok_and(|oid| oid != 0)
    }
}