1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2010-2014 Intel Corporation.
* Copyright (c) 2009, Olivier MATZ <zer0@droids-corp.org>
* All rights reserved.
*/
#ifndef _PARSE_NUM_H_
#define _PARSE_NUM_H_
#include <cmdline_parse.h>
#include <cmdline_parse_string.h>
#ifdef __cplusplus
extern "C" {
#endif
enum cmdline_numtype {
RTE_UINT8 = 0,
RTE_UINT16,
RTE_UINT32,
RTE_UINT64,
RTE_INT8,
RTE_INT16,
RTE_INT32,
RTE_INT64
};
struct cmdline_token_num_data {
enum cmdline_numtype type;
};
struct cmdline_token_num {
struct cmdline_token_hdr hdr;
struct cmdline_token_num_data num_data;
};
typedef struct cmdline_token_num cmdline_parse_token_num_t;
extern struct cmdline_token_ops cmdline_token_num_ops;
int cmdline_parse_num(cmdline_parse_token_hdr_t *tk,
const char *srcbuf, void *res, unsigned ressize);
int cmdline_get_help_num(cmdline_parse_token_hdr_t *tk,
char *dstbuf, unsigned int size);
#define TOKEN_NUM_INITIALIZER(structure, field, numtype) \
{ \
/* hdr */ \
{ \
&cmdline_token_num_ops, /* ops */ \
offsetof(structure, field), /* offset */ \
}, \
/* num_data */ \
{ \
numtype, /* type */ \
}, \
}
#ifdef __cplusplus
}
#endif
#endif /* _PARSE_NUM_H_ */
|