FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
lex.h File Reference
+ Include dependency graph for lex.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  vlib_lex_table_entry_t
 
struct  vlib_lex_table_t
 
struct  vlib_lex_token_t
 
struct  vlib_lex_main_t
 

Macros

#define foreach_vlib_lex_global_token
 

Enumerations

enum  vlib_lex_global_token_t { foreach_vlib_lex_global_token }
 
enum  vlib_lex_action_t {
  VLIB_LEX_IGNORE, VLIB_LEX_ADD_TO_TOKEN, VLIB_LEX_RETURN, VLIB_LEX_RETURN_AND_RESCAN,
  VLIB_LEX_KEYWORD_CHECK, VLIB_LEX_START_NUMBER, VLIB_LEX_ADD_TO_NUMBER
}
 

Functions

static void vlib_lex_cleanup_token (vlib_lex_token_t *t)
 
u16 vlib_lex_add_table (char *name)
 
void vlib_lex_get_token (vlib_lex_main_t *lm, vlib_lex_token_t *result)
 
u16 vlib_lex_add_token (vlib_lex_main_t *lm, char *token_name)
 
void vlib_lex_set_action_range (u32 table_index, u8 lo, u8 hi, u16 action, u16 token, u32 next_table_index)
 
void vlib_lex_reset (vlib_lex_main_t *lm, u8 *input_vector)
 

Variables

vlib_lex_main_t vlib_lex_main
 
format_function_t format_vlib_lex_token
 

Macro Definition Documentation

◆ foreach_vlib_lex_global_token

#define foreach_vlib_lex_global_token
Value:
_ (invalid) \
_ (eof) \
_ (word) \
_ (number) \
_ (lt) \
_ (gt) \
_ (dot) \
_ (slash) \
_ (qmark) \
_ (equals) \
_ (plus) \
_ (minus) \
_ (star) \
_ (lpar) \
_ (rpar)

Definition at line 23 of file lex.h.

Enumeration Type Documentation

◆ vlib_lex_action_t

Enumerator
VLIB_LEX_IGNORE 
VLIB_LEX_ADD_TO_TOKEN 
VLIB_LEX_RETURN 
VLIB_LEX_RETURN_AND_RESCAN 
VLIB_LEX_KEYWORD_CHECK 
VLIB_LEX_START_NUMBER 
VLIB_LEX_ADD_TO_NUMBER 

Definition at line 47 of file lex.h.

◆ vlib_lex_global_token_t

Enumerator
foreach_vlib_lex_global_token 

Definition at line 40 of file lex.h.

Function Documentation

◆ vlib_lex_add_table()

u16 vlib_lex_add_table ( char *  name)

Definition at line 207 of file lex.c.

+ Here is the call graph for this function:

◆ vlib_lex_add_token()

u16 vlib_lex_add_token ( vlib_lex_main_t lm,
char *  token_name 
)

Definition at line 148 of file lex.c.

+ Here is the caller graph for this function:

◆ vlib_lex_cleanup_token()

static void vlib_lex_cleanup_token ( vlib_lex_token_t t)
inlinestatic

Definition at line 120 of file lex.h.

◆ vlib_lex_get_token()

void vlib_lex_get_token ( vlib_lex_main_t lm,
vlib_lex_token_t result 
)

Definition at line 36 of file lex.c.

◆ vlib_lex_reset()

void vlib_lex_reset ( vlib_lex_main_t lm,
u8 input_vector 
)

Definition at line 233 of file lex.c.

◆ vlib_lex_set_action_range()

void vlib_lex_set_action_range ( u32  table_index,
u8  lo,
u8  hi,
u16  action,
u16  token,
u32  next_table_index 
)

Definition at line 190 of file lex.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ format_vlib_lex_token

format_function_t format_vlib_lex_token

Definition at line 135 of file lex.h.

◆ vlib_lex_main

vlib_lex_main_t vlib_lex_main

Definition at line 18 of file lex.c.

number
const char *const const double number
Definition: cJSON.h:268
word
i64 word
Definition: types.h:111