MCPcopy Create free account
hub / github.com/1a1a11a/libCacheSim / parse_cmd

Function parse_cmd

libCacheSim/bin/traceAnalyzer/cli_parser.cpp:256–280  ·  view source on GitHub ↗

* @brief parse the command line arguments * * @param argc * @param argv */

Source from the content-addressed store, hash-verified

254 * @param argv
255 */
256void parse_cmd(int argc, char *argv[], struct arguments *args) {
257 init_arg(args);
258
259 static struct argp argp = {.options = options,
260 .parser = parse_opt,
261 .args_doc = args_doc,
262 .doc = doc,
263 .children = NULL,
264 .help_filter = NULL,
265 .argp_domain = NULL};
266
267 argp_parse(&argp, argc, argv, 0, 0, args);
268
269 args->trace_path = args->args[0];
270 const char *trace_type_str = args->args[1];
271
272 if (args->ofilepath[0] == '\0') {
273 char *trace_filename = rindex(args->trace_path, '/');
274 snprintf(args->ofilepath, OFILEPATH_LEN, "%s",
275 trace_filename == NULL ? args->trace_path : trace_filename + 1);
276 }
277
278 args->reader = create_reader(trace_type_str, args->trace_path,
279 args->trace_type_params, args->n_req, false, 1);
280}
281
282void free_arg(struct arguments *args) { close_reader(args->reader); }
283

Callers 1

mainFunction · 0.70

Calls 2

create_readerFunction · 0.85
init_argFunction · 0.70

Tested by

no test coverage detected