nxt::Pos struct

Two-dimensional zero-based terminal position.

Public static functions

static auto at(width_t dx, height_t dy) →  Pos constexpr noexcept
Construct a position from offsets from terminal origin.
static auto origin() →  Pos constexpr noexcept
Return the terminal origin.

Public functions

auto col() const →  std::size_t constexpr noexcept
Raw zero-based column index.
auto from_origin() const →  Size constexpr noexcept
Return this position as a size from origin.
auto operator+(width_t dx) const →  Pos constexpr noexcept
Move horizontally.
auto operator+(height_t dy) const →  Pos constexpr noexcept
Move vertically.
auto operator+(Size delta) const →  Pos constexpr noexcept
Move by a size delta.
auto operator+=(Size delta) →  Pos& constexpr noexcept
Move by a size delta in place.
auto operator+=(width_t dx) →  Pos& constexpr noexcept
Move horizontally in place.
auto operator+=(height_t dy) →  Pos& constexpr noexcept
Move vertically in place.
auto row() const →  std::size_t constexpr noexcept
Raw zero-based row index.

Public variables

col_t x
Column coordinate.
row_t y
Row coordinate.

Friends

auto operator-(Pos a, Pos b) →  Size constexpr noexcept
Difference between two positions as a size delta.
auto operator==(Pos, Pos) →  bool defaulted constexpr noexcept