1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// @llm-protected: public API must not be extended on a whim. All features are implemented, do not add duplicates.
//! # Vantage Table
//!
//! A `Table` is a dataset with columns. This crate defines `Table`, `Column` and
//! the `TableSource` trait that database drivers implement.
//!
//! Type erasure for cross-driver work lives in
//! [`vantage-vista`](https://docs.rs/vantage-vista): wrap a typed table with
//! `db.vista_factory().from_table(table)?` to get a `Vista` that talks
//! `Record<ciborium::Value>` whatever the driver.
//!
//! ```rust,ignore
//! use vantage_table::prelude::Table;
//! use vantage_expressions::expr;
//!
//! let table = Table::new("users", my_datasource)
//! .with_id_column("id")
//! .with_column_of::<String>("name")
//! .with_condition(expr!("age > {}", 18));
//! ```