blob: 9660afc1285c94cac9729034f2b0651bd2f5e6e0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
module;
#include <asio.hpp>
#include <concepts>
export module ttwhy.routers:concepts;
import ttwhy.scanners;
namespace ttwhy
{
export template<typename Candidate>
concept router = requires(Candidate candidate, scanners::input_event event) {
typename Candidate::terminal_policy;
{ candidate.process(event) } -> std::same_as<asio::awaitable<void>>;
};
} // namespace ttwhy
|