mirror of
https://github.com/kierankihn/uno-game.git
synced 2025-12-27 02:13:18 +08:00
feat(server): add argument parsing for server port
- Integrated `argparse` to parse command-line arguments for setting the server port. - Default port set to `10001`.
This commit is contained in:
@@ -4,11 +4,32 @@
|
||||
* @author Yuzhe Guo
|
||||
* @date 2025.12.01
|
||||
*/
|
||||
#include <argparse/argparse.hpp>
|
||||
|
||||
#include "UnoServer.h"
|
||||
int main()
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
UNO::SERVER::UnoServer uno_server;
|
||||
uno_server.run();
|
||||
argparse::ArgumentParser parser("Uno Server", "0.1.0");
|
||||
|
||||
parser.add_argument("-p", "--port").help("server port").default_value(static_cast<uint16_t>(10001)).scan<'i', uint16_t>();
|
||||
|
||||
try {
|
||||
parser.parse_args(argc, argv);
|
||||
}
|
||||
catch (const std::exception &e) {
|
||||
std::cerr << e.what() << std::endl;
|
||||
std::cerr << parser;
|
||||
return 1;
|
||||
}
|
||||
|
||||
try {
|
||||
UNO::SERVER::UnoServer uno_server(parser.get<uint16_t>("--port"));
|
||||
uno_server.run();
|
||||
}
|
||||
catch (const std::exception &e) {
|
||||
std::cerr << e.what() << std::endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user