Skip to main content

uqa_sql/assignment/
mod.rs

1//
2// Unified Query Algebra
3//
4// Copyright (c) 2023-2026 Cognica, Inc.
5//
6
7//! SQL assignment conversion and catalog-defined domain constraints.
8
9use crate::expr::EngineHook;
10use crate::{ast::Expr, catalog::domain::DomainCatalog, ResultRow, RowSchema, SQLError};
11use uqa_core::Value;
12
13/// Domain metadata and bound check evaluation required by assignment conversion.
14pub trait AssignmentContext: EngineHook + DomainCatalog {
15    fn evaluate_domain_check(
16        &self,
17        expression: &Expr,
18        row: &ResultRow,
19        schema: &RowSchema,
20    ) -> Result<Value, SQLError>;
21}
22
23pub mod conversion;
24pub mod domain;
25pub mod vectors;
26
27#[cfg(test)]
28mod tests;
29
30pub mod routines;
31
32pub mod columns;