[−][src]Struct postgres_parser::sys::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
type_: NodeTagcolname: *mut c_chartypeName: *mut TypeNamename of column
inhcount: c_inttype of column
is_local: boolnumber of times column is inherited
is_not_null: boolcolumn has local (noninherited) def'n
is_from_type: boolNOT NULL constraint specified?
storage: c_charcolumn definition came from table type
raw_default: *mut Nodeattstorage setting, or 0 for default
cooked_default: *mut Nodedefault value (untransformed parse tree)
identity: c_chardefault value (transformed expr tree)
identitySequence: *mut RangeVarattidentity setting
generated: c_charto store identity sequence name for ALTER TABLE ... ADD COLUMN
collClause: *mut CollateClauseattgenerated setting
collOid: Oiduntransformed COLLATE spec, if any
constraints: *mut Listcollation OID (InvalidOid if not set)
fdwoptions: *mut Listother constraints on column
location: c_intpercolumn FDW options
Trait Implementations
impl Debug for ColumnDef[src]
impl Default for ColumnDef[src]
impl Eq for ColumnDef[src]
impl Hash for ColumnDef[src]
fn hash<__H: Hasher>(&self, state: &mut __H)[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
impl PartialEq<ColumnDef> for ColumnDef[src]
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> 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>,