pub struct ViewColumn {
pub name: Identifier,
pub column_type: Option<ColumnType>,
pub comment: Option<String>,
}Expand description
A single named column in a view or materialized view.
column_type is None while unresolved — when ViewColumn is built from
an explicit alias list during parsing, the type requires resolving the
SELECT body against the catalog. The AST-canonicalization pass fills it in.
Resolution is enforced by Catalog::canonicalize: a None that survives
to canon is an error, so a serialized catalog never carries an unresolved
column type. When built from the live catalog the type is always Some.
Fields§
§name: IdentifierColumn name as it appears in the view definition (or is aliased).
column_type: Option<ColumnType>Resolved data type of the column, or None while unresolved.
comment: Option<String>Optional COMMENT ON COLUMN text.
Trait Implementations§
Source§impl Clone for ViewColumn
impl Clone for ViewColumn
Source§fn clone(&self) -> ViewColumn
fn clone(&self) -> ViewColumn
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ViewColumn
impl Debug for ViewColumn
Source§impl<'de> Deserialize<'de> for ViewColumn
impl<'de> Deserialize<'de> for ViewColumn
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ViewColumn
Source§impl Hash for ViewColumn
impl Hash for ViewColumn
Source§impl PartialEq for ViewColumn
impl PartialEq for ViewColumn
Source§fn eq(&self, other: &ViewColumn) -> bool
fn eq(&self, other: &ViewColumn) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for ViewColumn
impl Serialize for ViewColumn
impl StructuralPartialEq for ViewColumn
Auto Trait Implementations§
impl Freeze for ViewColumn
impl RefUnwindSafe for ViewColumn
impl Send for ViewColumn
impl Sync for ViewColumn
impl Unpin for ViewColumn
impl UnsafeUnpin for ViewColumn
impl UnwindSafe for ViewColumn
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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