pub struct TableInfo {
pub name: String,
pub columns: Vec<ColumnInfo>,
pub primary_keys: Vec<String>,
pub foreign_keys: Vec<ForeignKey>,
pub description: Option<String>,
pub row_count: Option<usize>,
pub metadata: HashMap<String, Value>,
}
Expand description
Table information
Fields§
§name: String
Table name
columns: Vec<ColumnInfo>
Columns in the table
primary_keys: Vec<String>
Primary key columns
foreign_keys: Vec<ForeignKey>
Foreign key relationships
description: Option<String>
Table description
row_count: Option<usize>
Row count (if available)
metadata: HashMap<String, Value>
Custom table metadata
Implementations§
Source§impl TableInfo
impl TableInfo
Sourcepub fn with_column(self, column: ColumnInfo) -> TableInfo
pub fn with_column(self, column: ColumnInfo) -> TableInfo
Add column
Sourcepub fn with_primary_key<S>(self, column: S) -> TableInfo
pub fn with_primary_key<S>(self, column: S) -> TableInfo
Add primary key
Sourcepub fn with_foreign_key(self, fk: ForeignKey) -> TableInfo
pub fn with_foreign_key(self, fk: ForeignKey) -> TableInfo
Add foreign key
Sourcepub fn description<S>(self, description: S) -> TableInfo
pub fn description<S>(self, description: S) -> TableInfo
Set description
Sourcepub fn get_column(&self, name: &str) -> Option<&ColumnInfo>
pub fn get_column(&self, name: &str) -> Option<&ColumnInfo>
Get column by name
Sourcepub fn is_primary_key(&self, column: &str) -> bool
pub fn is_primary_key(&self, column: &str) -> bool
Check if column is primary key
Trait Implementations§
Source§impl<'de> Deserialize<'de> for TableInfo
impl<'de> Deserialize<'de> for TableInfo
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<TableInfo, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<TableInfo, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for TableInfo
impl Serialize for TableInfo
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for TableInfo
impl RefUnwindSafe for TableInfo
impl Send for TableInfo
impl Sync for TableInfo
impl Unpin for TableInfo
impl UnwindSafe for TableInfo
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self
file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self
file descriptor. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more