[−][src]Struct postgres_parser::nodes::ColumnDef
ColumnDef column definition (used in various creates)
If the column has a default value, we may have the value expression in either "raw" form (an untransformed parse tree) or "cooked" form (a postparseanalysis, executable expression tree), depending on how this ColumnDef node was created (by parsing, or by inheritance from an existing relation). We should never have both in the same node!
Similarly, we may have a COLLATE specification in either raw form (represented as a CollateClause with arg==NULL) or cooked form (the collation's OID).
The constraints list may contain a CONSTR_DEFAULT item in a raw parsetree produced by gram.y, but transformCreateStmt will remove the item and set raw_default instead. CONSTR_DEFAULT items should not appear in any subsequent processing.
Fields
colname: Option<String>
typeName: Option<Box<TypeName>>
inhcount: i32
is_local: bool
is_not_null: bool
is_from_type: bool
storage: char
raw_default: Option<Box<Node>>
cooked_default: Option<Box<Node>>
identity: char
identitySequence: Option<Box<RangeVar>>
generated: char
collClause: Option<Box<CollateClause>>
collOid: Oid
constraints: Option<Vec<Node>>
fdwoptions: Option<Vec<Node>>
location: i32
Trait Implementations
impl Debug for ColumnDef
[src]
impl<'de> Deserialize<'de> for ColumnDef
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Eq for ColumnDef
[src]
impl PartialEq<ColumnDef> for ColumnDef
[src]
impl Serialize for ColumnDef
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralEq for ColumnDef
[src]
impl StructuralPartialEq for ColumnDef
[src]
Auto Trait Implementations
impl RefUnwindSafe for ColumnDef
impl Send for ColumnDef
impl Sync for ColumnDef
impl Unpin for ColumnDef
impl UnwindSafe for ColumnDef
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,