hybridse::vm::WindowRange

#include <mem_catalog.h>

Summary

Public Types

Name

WindowPositionStatus { kInWindow, kExceedWindow, kBeforeWindow}

enum

Public functions

WindowRange(Window::WindowFrameType frame_type, int64_t start_offset, int64_t end_offset, uint64_t rows_preceding, uint64_t max_size)

GetWindowPositionStatus(bool out_of_rows, bool before_window, bool exceed_window) const

CreateRowsWindow(uint64_t rows_preceding)

CreateRowsRangeWindow(int64_t start_offset, int64_t end_offset, uint64_t max_size =0)

CreateRowsMergeRowsRangeWindow(int64_t start_offset, uint64_t rows_preceding, uint64_t max_size =0)

Public Types

enum WindowPositionStatus

Enumerator
Value
Description

kInWindow

kExceedWindow

kBeforeWindow

Public Functions

function WindowRange

inline WindowRange()

function WindowRange

inline WindowRange(
    Window::WindowFrameType frame_type,
    int64_t start_offset,
    int64_t end_offset,
    uint64_t rows_preceding,
    uint64_t max_size
)

function ~WindowRange

inline virtual ~WindowRange()

function GetWindowPositionStatus

inline const WindowPositionStatus GetWindowPositionStatus(
    bool out_of_rows,
    bool before_window,
    bool exceed_window
) const

function CreateRowsWindow

static inline WindowRange CreateRowsWindow(
    uint64_t rows_preceding
)

function CreateRowsRangeWindow

static inline WindowRange CreateRowsRangeWindow(
    int64_t start_offset,
    int64_t end_offset,
    uint64_t max_size =0
)

function CreateRowsMergeRowsRangeWindow

static inline WindowRange CreateRowsMergeRowsRangeWindow(
    int64_t start_offset,
    uint64_t rows_preceding,
    uint64_t max_size =0
)

Public Attributes

variable frame_type_

Window::WindowFrameType frame_type_;

variable start_offset_

int64_t start_offset_;

variable end_offset_

int64_t end_offset_;

variable start_row_

uint64_t start_row_;

variable end_row_

uint64_t end_row_;

variable max_size_

uint64_t max_size_;

Last updated