ttx 0.1.0
Loading...
Searching...
No Matches
absolute_position.h
Go to the documentation of this file.
1#pragma once
2
3#include "di/reflect/prelude.h"
4#include "di/types/integers.h"
5
6namespace ttx::terminal {
12 u64 row { 0 };
13 u32 col { 0 };
14
15 auto operator==(AbsolutePosition const&) const -> bool = default;
16 auto operator<=>(AbsolutePosition const&) const = default;
17
18 constexpr friend auto tag_invoke(di::Tag<di::reflect>, di::InPlaceType<AbsolutePosition>) {
19 return di::make_fields<"AbsolutePosition">(di::field<"row", &AbsolutePosition::row>,
20 di::field<"col", &AbsolutePosition::col>);
21 }
22};
23}
Definition absolute_position.h:6
Represents a coordinate anywhere in a screen, including scroll back.
Definition absolute_position.h:11
u32 col
The column in the specified row.
Definition absolute_position.h:13
auto operator<=>(AbsolutePosition const &) const =default
u64 row
The absolute row in a screen.
Definition absolute_position.h:12
auto operator==(AbsolutePosition const &) const -> bool=default
constexpr friend auto tag_invoke(di::Tag< di::reflect >, di::InPlaceType< AbsolutePosition >)
Definition absolute_position.h:18