pub struct ColumnDef {
pub name: String,
pub data_type: DataType,
pub nullable: bool,
pub constraints: Vec<ColumnConstraint>,
pub default_value: Option<Box<Expression>>,
pub comment: Option<String>,
pub generated_expr: Option<Box<Expression>>,
pub is_exact_integer_type: bool,
}Expand description
Column definition
Fields§
§name: String§data_type: DataType§nullable: bool§constraints: Vec<ColumnConstraint>§default_value: Option<Box<Expression>>§comment: Option<String>§generated_expr: Option<Box<Expression>>Generated/computed column expression (AS(expression) syntax) When present, this column’s value is computed from the expression rather than being stored explicitly
is_exact_integer_type: boolSQLite rowid alias eligibility flag.
True only when the original type declaration was exactly “INTEGER” (case-insensitive).
In SQLite, only INTEGER PRIMARY KEY is a rowid alias, not INT PRIMARY KEY.
This distinguishes between INT and INTEGER which both parse to DataType::Integer.
Trait Implementations§
impl StructuralPartialEq for ColumnDef
Auto Trait Implementations§
impl Freeze for ColumnDef
impl RefUnwindSafe for ColumnDef
impl Send for ColumnDef
impl Sync for ColumnDef
impl Unpin for ColumnDef
impl UnwindSafe for ColumnDef
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more