From d478c7311eceed6cdcbe8ca574b744dd8bc177fc Mon Sep 17 00:00:00 2001 From: Syndamia Date: Wed, 23 Jul 2025 13:14:48 +0300 Subject: feat: Add helper input function --- src/cli.hpp | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/cli.hpp (limited to 'src/cli.hpp') diff --git a/src/cli.hpp b/src/cli.hpp new file mode 100644 index 0000000..9a2ca64 --- /dev/null +++ b/src/cli.hpp @@ -0,0 +1,25 @@ +#ifndef GS_CLI +#define GS_CLI + +#include +#include + +namespace cli { + template + void readUserInput(T& outValue, const char* enter_message, const char* error_message) { + do { + std::cout << enter_message; + std::cin >> outValue; + if (std::cin.fail()) { + std::cerr << error_message << std::endl; + + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); + continue; + } + break; + } while (true); + } +} + +#endif /* GS_CLI */ -- cgit v1.3.1-23-gd82d