LFX Mentorship 2023
Classes | Typedefs | Functions
argparse.h File Reference

Provides stuff for argument parsing and return raw parsing result. More...

#include "option.h"
#include <stdbool.h>
Include dependency graph for argparse.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  pd
 ParseData Struct. More...
 

Typedefs

typedef struct pd ParseData
 ParseData Struct. More...
 

Functions

ParseDatacreate_ParseData (Option **opt, Option *remain_arg, int opt_len)
 Create a ParseData pointer, need to be deleted before exit execution. More...
 
void delete_ParseData (ParseData *pd)
 Delete a ParseData pointer from create_ParseData(). More...
 
void show_pd (const ParseData *pd)
 Print ParseData. More...
 
bool _set_option_args (Option *, int *, const int, const char **)
 
bool _get_option_index (int *, const Option **, const int, const char *)
 
bool handle_parse (ParseData *pd, const int argc, const char **argv)
 Parse argv and return result to ParseData pointer. More...
 

Detailed Description

Provides stuff for argument parsing and return raw parsing result.

Typedef Documentation

◆ ParseData

typedef struct pd ParseData

ParseData Struct.

Parameters
optis a Option pointer array.
remain_argis a Option pointer. It contains arguments not belong to any option.
opt_lenis the length of opt

Function Documentation

◆ create_ParseData()

ParseData* create_ParseData ( Option **  opt,
Option remain_arg,
int  opt_len 
)

Create a ParseData pointer, need to be deleted before exit execution.

Parameters
optis a Option pointer array.
remain_argis a Option pointer. It contains arguments not belong to any option.
opt_lenis the length of opt
Returns
Return ParseData pointer.

◆ delete_ParseData()

void delete_ParseData ( ParseData pd)

Delete a ParseData pointer from create_ParseData().

Parameters
pdParseData pointer

◆ handle_parse()

bool handle_parse ( ParseData pd,
const int  argc,
const char **  argv 
)

Parse argv and return result to ParseData pointer.

Parameters
pdis a ParseData pointer. It is used to get parsing result.
argcis length of argv.
argvconstains arguments pass from CLI.
Returns
Return true if success. Return false if not.

◆ show_pd()

void show_pd ( const ParseData pd)

Print ParseData.

Parameters
pdis a ParseData pointer