Bomberman Multiplayer
Authoritative multiplayer networking layer for Bomberman.
Loading...
Searching...
No Matches
bomberman::cli Namespace Reference

Shared CLI parsing utilities for the project. More...

Classes

struct  DiagnosticsCliOptions
 Diagnostics-related CLI options. More...
 
struct  LoggingCliOptions
 

Functions

bool parseLogLevel (std::string_view text, spdlog::level::level_enum &outLevel)
 Parses a textual log level into a spdlog level enum. Case-sensitive.
 
bool parsePort (std::string_view text, uint16_t &outPort)
 Parses and validates a network port in range [1, 65535].
 
bool parseUint32 (std::string_view text, uint32_t &outValue)
 Parses a uint32_t from text, with full validation.
 
bool tryParseLoggingOption (int argc, char **argv, int &ioIndex, LoggingCliOptions &outOptions, std::string &outError)
 Tries to parse one shared logging-related CLI option.
 
bool tryParseDiagnosticsOption (int argc, char **argv, int &ioIndex, DiagnosticsCliOptions &outOptions, std::string &outError)
 Tries to parse one shared diagnostics-related CLI option.
 
bool tryParseClientNetcodeDebugOption (int argc, char **argv, int &ioIndex, bool &ioPredictionEnabled, bool &ioRemoteSmoothingEnabled, std::string &outError)
 Tries to parse one client-only debug netcode option.
 

Variables

constexpr bool kNetDiagAvailable = false
 
constexpr bool kClientNetcodeDebugOptionsAvailable = false
 
constexpr std::string_view kLoggingUsageArgs
 
constexpr std::string_view kDiagnosticsUsageArgs
 
constexpr std::string_view kClientNetcodeDebugUsageArgs
 

Detailed Description

Shared CLI parsing utilities for the project.

Function Documentation

◆ tryParseLoggingOption()

bool bomberman::cli::tryParseLoggingOption ( int  argc,
char **  argv,
int &  ioIndex,
LoggingCliOptions outOptions,
std::string &  outError 
)
inline

Tries to parse one shared logging-related CLI option.

Parameters
argcFull argc from main().
argvFull argv from main().
ioIndexCurrent argument index.
outOptionsShared logging CLI state.
outErrorFilled on failure.
Returns
true if this argument was recognized as a shared logging option.

Variable Documentation

◆ kClientNetcodeDebugUsageArgs

constexpr std::string_view bomberman::cli::kClientNetcodeDebugUsageArgs
inlineconstexpr
Initial value:
{
"[--no-prediction] [--no-remote-smoothing]",
sizeof("[--no-prediction] [--no-remote-smoothing]") - 1
}

◆ kDiagnosticsUsageArgs

constexpr std::string_view bomberman::cli::kDiagnosticsUsageArgs
inlineconstexpr
Initial value:
{
"[--net-diag]",
sizeof("[--net-diag]") - 1
}

◆ kLoggingUsageArgs

constexpr std::string_view bomberman::cli::kLoggingUsageArgs
inlineconstexpr
Initial value:
{
"[--log-level <trace|debug|info|warn|error>] [--log-file <path>]",
sizeof("[--log-level <trace|debug|info|warn|error>] [--log-file <path>]") - 1
}