Struct TableMeta
pub struct TableMeta {
pub columns: Vec<String>,
pub pk: Vec<usize>,
pub col_types: Vec<ColType>,
pub nullable: Vec<bool>,
}Expand description
What a table registration records (the column order + PK columns drive Mutation→SQL; the
per-column ColType feeds schema codegen via /schema).
Fields§
§columns: Vec<String>§pk: Vec<usize>§col_types: Vec<ColType>One ColType per entry in columns (same order). For introspected tables these are
derived from the declared SQLite type (ColType::from_sqlite_decl — BOOLEAN/JSON
recognized by name, else affinity); for typed registrations they are the declared types. On a
PG-mirror follower they are instead recovered from the _rindle_columns sidecar
(coltype_from_sidecar), whose semantic tags outlive the affinity-only mirror DDL.
nullable: Vec<bool>One nullability flag per entry in columns (same order): true when the column is nullable
(SQLite pragma_table_info.notnull == 0, or the _rindle_columns sidecar’s not_null on a
PG-mirror follower, whose mirror DDL is permissive), false for NOT NULL. Feeds the generated
client schema’s .nullable() via /schema (design 206). This is the raw DDL/sidecar fact — the
PK non-null exception is applied in base_table_schemas, not here.