[][src]Struct postgres_parser::sys::IndexStmt

#[repr(C)]pub struct IndexStmt {
    pub type_: NodeTag,
    pub idxname: *mut c_char,
    pub relation: *mut RangeVar,
    pub accessMethod: *mut c_char,
    pub tableSpace: *mut c_char,
    pub indexParams: *mut List,
    pub indexIncludingParams: *mut List,
    pub options: *mut List,
    pub whereClause: *mut Node,
    pub excludeOpNames: *mut List,
    pub idxcomment: *mut c_char,
    pub indexOid: Oid,
    pub oldNode: Oid,
    pub unique: bool,
    pub primary: bool,
    pub isconstraint: bool,
    pub deferrable: bool,
    pub initdeferred: bool,
    pub transformed: bool,
    pub concurrent: bool,
    pub if_not_exists: bool,
    pub reset_default_tblspc: bool,
}

Create Index Statement

This represents creation of an index and/or an associated constraint. If isconstraint is true, we should create a pg_constraint entry along with the index. But if indexOid isn't InvalidOid, we are not creating an index, just a UNIQUE/PKEY constraint using an existing index. isconstraint must always be true in this case, and the fields describing the index properties are empty.

Fields

type_: NodeTagidxname: *mut c_charrelation: *mut RangeVar

name of new index, or NULL for default

accessMethod: *mut c_char

relation to build index on

tableSpace: *mut c_char

name of access method (eg. btree)

indexParams: *mut List

tablespace, or NULL for default

indexIncludingParams: *mut List

columns to index: a list of IndexElem

options: *mut List

additional columns to index: a list of IndexElem

whereClause: *mut Node

WITH clause options: a list of DefElem

excludeOpNames: *mut List

qualification (partialindex predicate)

idxcomment: *mut c_char

exclusion operator names, or NIL if none

indexOid: Oid

comment to apply to index, or NULL

oldNode: Oid

OID of an existing index, if any

unique: bool

relfilenode of existing storage, if any

primary: bool

is index unique?

isconstraint: bool

is index a primary key?

deferrable: bool

is it for a pkey/unique constraint?

initdeferred: bool

is the constraint DEFERRABLE?

transformed: bool

is the constraint INITIALLY DEFERRED?

concurrent: bool

true when transformIndexStmt is finished

if_not_exists: bool

should this be a concurrent index build?

reset_default_tblspc: bool

just do nothing if index already exists?

Trait Implementations

impl Debug for IndexStmt[src]

impl Default for IndexStmt[src]

impl Eq for IndexStmt[src]

impl Hash for IndexStmt[src]

impl PartialEq<IndexStmt> for IndexStmt[src]

impl StructuralEq for IndexStmt[src]

impl StructuralPartialEq for IndexStmt[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.