[][src]Struct postgres_parser::nodes::WindowClause

pub struct WindowClause {
    pub name: Option<String>,
    pub refname: Option<String>,
    pub partitionClause: Option<Vec<Node>>,
    pub orderClause: Option<Vec<Node>>,
    pub frameOptions: i32,
    pub startOffset: Option<Box<Node>>,
    pub endOffset: Option<Box<Node>>,
    pub startInRangeFunc: Oid,
    pub endInRangeFunc: Oid,
    pub inRangeColl: Oid,
    pub inRangeAsc: bool,
    pub inRangeNullsFirst: bool,
    pub winref: Index,
    pub copiedOrder: bool,
}

WindowClause transformed representation of WINDOW and OVER clauses

A parsed Query's windowClause list contains these structs. "name" is set if the clause originally came from WINDOW, and is NULL if it originally was an OVER clause (but note that we collapse out duplicate OVERs). partitionClause and orderClause are lists of SortGroupClause structs. If we have RANGE with offset PRECEDING/FOLLOWING, the semantics of that are specified by startInRangeFunc/inRangeColl/inRangeAsc/inRangeNullsFirst for the start offset, or endInRangeFunc/inRange* for the end offset. winref is an ID number referenced by WindowFunc nodes; it must be unique among the members of a Query's windowClause list. When refname isn't null, the partitionClause is always copied from there; the orderClause might or might not be copied (see copiedOrder); the framing options are never copied, per spec.

Fields

name: Option<String>refname: Option<String>partitionClause: Option<Vec<Node>>orderClause: Option<Vec<Node>>frameOptions: i32startOffset: Option<Box<Node>>endOffset: Option<Box<Node>>startInRangeFunc: OidendInRangeFunc: OidinRangeColl: OidinRangeAsc: boolinRangeNullsFirst: boolwinref: IndexcopiedOrder: bool

Trait Implementations

impl Debug for WindowClause[src]

impl<'de> Deserialize<'de> for WindowClause[src]

impl Eq for WindowClause[src]

impl PartialEq<WindowClause> for WindowClause[src]

impl Serialize for WindowClause[src]

impl StructuralEq for WindowClause[src]

impl StructuralPartialEq for WindowClause[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> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[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.