first working version
This commit is contained in:
@@ -1,6 +1,24 @@
|
||||
#pragma once
|
||||
|
||||
typedef void(*help_filter)(char key, const char *text);
|
||||
// void parser (int key, char *arg, struct argp_state *state);
|
||||
#define CMDP_KEY_DONE 1
|
||||
#define CMDP_KEY_ARG 2
|
||||
#define CMDP_KEY_STOP 3
|
||||
|
||||
void cmd_parse(char* msg);
|
||||
typedef enum
|
||||
{
|
||||
CMD_OK,
|
||||
CMD_VALUE_REQ,
|
||||
CMD_MULTIVAL_REQ,
|
||||
CMD_UNKNOWN,
|
||||
} result_t;
|
||||
|
||||
typedef result_t (*parser_t)(char key, char *arg);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
char *name;
|
||||
parser_t parser;
|
||||
} cmd_t;
|
||||
|
||||
void cmd_parser_init(const cmd_t *commands[], uint8_t size);
|
||||
void msg_parse(char *msg);
|
||||
Reference in New Issue
Block a user