api_mode_yy.h (960B)
1 /* 2 * 3 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 4 * 5 * Copyright 2007-2019 Broadcom Inc. All rights reserved. 6 * 7 * File: api_mode_yy.h 8 * Purpose: API mode lexer/parser interfaces 9 */ 10 11 #ifndef _API_MODE_YY_H_ 12 #define _API_MODE_YY_H_ 13 14 #include "api_mode.h" 15 #include "tokenizer.h" 16 17 typedef struct yyltype_s 18 { 19 int first_line; 20 int first_column; 21 int last_line; 22 int last_column; 23 } yyltype, yyltype_t; 24 25 typedef struct api_mode_scanner_s { 26 int idx; /* token idx */ 27 api_mode_tokens_t tok; /* tokenizer output */ 28 } api_mode_scanner_t; 29 30 typedef api_mode_scanner_t *yyscan_t; 31 typedef api_mode_arg_t *yystype_t; 32 33 /* Define interfaces for Bison */ 34 #define YYSTYPE yystype_t 35 #define YYLTYPE yyltype_t 36 37 extern int api_mode_lex (YYSTYPE *lvalp, YYLTYPE *llocp, yyscan_t scanner); 38 39 #endif /* _API_MODE_YY_H_ */