My Project
programmer's documentation
mei_parser_glob.h
Go to the documentation of this file.
1 #ifndef __MEI_PARSER_GLOB_H__
2 #define __MEI_PARSER_GLOB_H__
3 
10 /*
11  This file is part of Code_Saturne, a general-purpose CFD tool.
12 
13  Copyright (C) 1998-2019 EDF S.A.
14 
15  This program is free software; you can redistribute it and/or modify it under
16  the terms of the GNU General Public License as published by the Free Software
17  Foundation; either version 2 of the License, or (at your option) any later
18  version.
19 
20  This program is distributed in the hope that it will be useful, but WITHOUT
21  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
22  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
23  details.
24 
25  You should have received a copy of the GNU General Public License along with
26  this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
27  Street, Fifth Floor, Boston, MA 02110-1301, USA.
28 */
29 
30 /*----------------------------------------------------------------------------*/
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif /* __cplusplus */
35 
36 /*----------------------------------------------------------------------------*/
37 
38 /*----------------------------------------------------------------------------
39  * Local headers
40  *----------------------------------------------------------------------------*/
41 
42 #include "mei_node.h"
43 
44 /*----------------------------------------------------------------------------
45  * Max length of the variable name
46  *----------------------------------------------------------------------------*/
47 
48 #define TOKEN_SIZE 200
49 
50 /*============================================================================
51  * Global variables
52  *============================================================================*/
53 
54 /* Line and column counters */
55 
56 extern int mei_glob_column;
57 extern int mei_glob_line;
58 
59 /* Error counter and markers */
60 
61 extern int mei_glob_ierr_list;
62 extern int *mei_glob_column_list;
63 extern int *mei_glob_line_list;
64 extern char **mei_glob_label_list;
65 
66 /* Start/end of the expression is set in these global variables */
67 
68 extern char *mei_glob_string_begin;
69 extern char *mei_glob_string_end;
70 
71 /* Root node */
72 
73 extern mei_node_t *mei_glob_root;
74 
75 /*============================================================================
76  * Public function prototypes defined by Yacc
77  *============================================================================*/
78 
79 /*----------------------------------------------------------------------------
80  * Parse the expression
81  *----------------------------------------------------------------------------*/
82 
83 int yyparse(void);
84 
85 /*----------------------------------------------------------------------------
86  * Give an error message if needed
87  *----------------------------------------------------------------------------*/
88 
89 void yyerror(const char *s);
90 
91 /*----------------------------------------------------------------------------*/
92 
93 #ifdef __cplusplus
94 }
95 #endif /* __cplusplus */
96 
97 #endif /* __MEI_PARSER_GLOB_H__ */
98 
yyparse
int yyparse(void)
Definition: mei_parser.c:1385
yyerror
void yyerror(const char *s)
Definition: mei_parser.c:2089
mei_glob_column
int mei_glob_column
Definition: mei_parser_glob.c:61
mei_glob_ierr_list
int mei_glob_ierr_list
Definition: mei_parser_glob.c:66
mei_glob_column_list
int * mei_glob_column_list
Definition: mei_parser_glob.c:67
mei_glob_string_end
char * mei_glob_string_end
Definition: mei_parser_glob.c:74
mei_glob_root
mei_node_t * mei_glob_root
Definition: mei_parser_glob.c:78
mei_glob_label_list
char ** mei_glob_label_list
Definition: mei_parser_glob.c:69
mei_glob_line
int mei_glob_line
Definition: mei_parser_glob.c:62
mei_glob_string_begin
char * mei_glob_string_begin
Definition: mei_parser_glob.c:73
mei_glob_line_list
int * mei_glob_line_list
Definition: mei_parser_glob.c:68
mei_node.h
Nodal structure of the interpreter.