|
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the documentation of this file.
15 #ifndef included_vlib_parse_h
16 #define included_vlib_parse_h
27 u8 as_u8[32 - 1 *
sizeof (
u16)];
36 } __attribute ((packed))
75 #define foreach_parse_match_type \
87 #define _(a) VLIB_PARSE_##a,
192 #define _PARSE_REGISTRATION_DATA(x) \
193 VLIB_ELF_SECTION_DATA(x##_registration,parse_registration_t,parse_registrations)
195 #define PARSE_INIT(x, s, e) \
196 static _PARSE_REGISTRATION_DATA(x) = { \
201 #define _PARSE_TYPE_REGISTRATION_DATA(x) \
202 VLIB_ELF_SECTION_DATA(x##_type_registration,vlib_parse_type_t, \
203 parse_type_registrations)
205 #define PARSE_TYPE_INIT(n, m, c, f) \
206 static _PARSE_TYPE_REGISTRATION_DATA(n) = { \
208 .match_function = m, \
209 .value_cleanup_function = c, \
vlib_parse_main_t vlib_parse_main
vlib_parse_graph_t * parse_graph
struct vlib_parse_main vlib_parse_main_t
vlib_parse_match_function_t number_match
vlib_parse_item_t * parse_items
vlib_parse_match_function_t * match_function
vlib_parse_value_cleanup_function_t * value_cleanup_function
#define foreach_parse_match_type
vlib_parse_value_t * parse_value
parse_registration_t ** parse_registrations
uword * parse_type_by_name_hash
vlib_parse_type_t * parse_types
struct vlib_parse_type vlib_parse_type_t
vlib_lex_main_t * lex_main
vlib_parse_match_function_t rule_match
vlib_parse_match_t() vlib_parse_eval_function_t(vlib_parse_main_t *, vlib_parse_item_t *, vlib_parse_value_t *)
vlib_parse_match_t() vlib_parse_match_function_t(struct vlib_parse_main *, struct vlib_parse_type *, vlib_lex_token_t *, vlib_parse_value_t *)
void() vlib_parse_value_cleanup_function_t(vlib_parse_value_t *)
format_function_t * format_value
vlib_lex_token_t * tokens
format_function_t format_vlib_parse_value
vlib_parse_match_t vlib_parse_eval(u8 *input)
vlib_parse_match_function_t eof_match
vl_api_fib_path_type_t type
vlib_parse_match_function_t word_match