diff options
| author | Felix Morgner <felix.morgner@gmail.com> | 2026-06-19 19:25:30 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@gmail.com> | 2026-06-19 19:25:30 +0200 |
| commit | 7da39cd68d2bed2f49452ac5f9a3c01c52d0c5ba (patch) | |
| tree | a2c2adc18bc5bdaa1e1e2f80e75d1acbce78d7bb /ttwhy/routers | |
| parent | b198d40e35050c8692296f06acedfaf5e3c8a023 (diff) | |
| download | ttwhy-7da39cd68d2bed2f49452ac5f9a3c01c52d0c5ba.tar.xz ttwhy-7da39cd68d2bed2f49452ac5f9a3c01c52d0c5ba.zip | |
lib: clean up structure
Diffstat (limited to 'ttwhy/routers')
| -rw-r--r-- | ttwhy/routers/echo.cppm | 21 | ||||
| -rw-r--r-- | ttwhy/routers/mod.cppm | 3 |
2 files changed, 14 insertions, 10 deletions
diff --git a/ttwhy/routers/echo.cppm b/ttwhy/routers/echo.cppm index fb392d6..40e68d6 100644 --- a/ttwhy/routers/echo.cppm +++ b/ttwhy/routers/echo.cppm @@ -8,6 +8,7 @@ module; export module ttwhy.routers:echo; import ttwhy; +import ttwhy.scanners; namespace ttwhy::routers { @@ -25,21 +26,21 @@ namespace ttwhy::routers : m_output_stream{stream} {} - auto process(ttwhy::input_event event) -> asio::awaitable<void> + auto process(scanners::input_event event) -> asio::awaitable<void> { co_await std::visit( [&](auto && event) -> asio::awaitable<void> { using event_type = std::decay_t<decltype(event)>; - if constexpr (std::same_as<character_event, event_type>) + if constexpr (std::same_as<scanners::character_event, event_type>) { co_await process_character(event.value); } - else if constexpr (std::same_as<control_event, event_type>) + else if constexpr (std::same_as<scanners::control_event, event_type>) { co_await process_control_key(event.key); } - else if constexpr (std::same_as<navigation_event, event_type>) + else if constexpr (std::same_as<scanners::navigation_event, event_type>) { co_await process_navigation_key(event.key); } @@ -53,19 +54,19 @@ namespace ttwhy::routers co_await asio::async_write(m_output_stream, asio::buffer(&character, 1), asio::as_tuple(asio::use_awaitable)); } - auto process_control_key(control_key key) -> asio::awaitable<void> + auto process_control_key(scanners::control_key key) -> asio::awaitable<void> { switch (key) { - case control_key::backspace: + case scanners::control_key::backspace: co_await asio::async_write(m_output_stream, asio::buffer(vte_backspace_sequence), asio::as_tuple(asio::use_awaitable)); break; - case control_key::enter: + case scanners::control_key::enter: co_await asio::async_write(m_output_stream, asio::buffer(vte_newline_sequence), asio::as_tuple(asio::use_awaitable)); break; - case control_key::tab: + case scanners::control_key::tab: co_await asio::async_write(m_output_stream, asio::buffer(vte_horizontal_tab_sequqnce), asio::as_tuple(asio::use_awaitable)); break; @@ -76,11 +77,11 @@ namespace ttwhy::routers }; } - auto process_navigation_key(navigation_key key) -> asio::awaitable<void> + auto process_navigation_key(scanners::navigation_key key) -> asio::awaitable<void> { switch (key) { - case navigation_key::delete_key: + case scanners::navigation_key::delete_key: co_await asio::async_write(m_output_stream, asio::buffer("{DEL}"), asio::as_tuple(asio::use_awaitable)); break; default: diff --git a/ttwhy/routers/mod.cppm b/ttwhy/routers/mod.cppm new file mode 100644 index 0000000..fbab282 --- /dev/null +++ b/ttwhy/routers/mod.cppm @@ -0,0 +1,3 @@ +export module ttwhy.routers; + +export import :echo; |
