43 lines
491 B
C
43 lines
491 B
C
|
#pragma once
|
||
|
|
||
|
#include <stdbool.h>
|
||
|
#include <stddef.h>
|
||
|
|
||
|
typedef struct {
|
||
|
int argc;
|
||
|
char** argv;
|
||
|
|
||
|
char* value;
|
||
|
|
||
|
bool after_option;
|
||
|
} parsarg_t;
|
||
|
|
||
|
void
|
||
|
parsarg_initialize(
|
||
|
parsarg_t* pa,
|
||
|
int argc,
|
||
|
char** argv
|
||
|
);
|
||
|
|
||
|
void
|
||
|
parsarg_deinitialize(
|
||
|
parsarg_t* pa
|
||
|
);
|
||
|
|
||
|
char* /* NULLABLE */
|
||
|
parsarg_pop_name(
|
||
|
parsarg_t* pa,
|
||
|
size_t* len
|
||
|
);
|
||
|
|
||
|
bool
|
||
|
parsarg_pop_value(
|
||
|
parsarg_t* pa,
|
||
|
char** str
|
||
|
);
|
||
|
|
||
|
bool
|
||
|
parsarg_finished(
|
||
|
const parsarg_t* pa
|
||
|
);
|