atlas  0.6
parser.tab.h
Go to the documentation of this file.
1 /* A Bison parser, made by GNU Bison 3.0.4. */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5  Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6 
7  This program is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program. If not, see <http://www.gnu.org/licenses/>. */
19 
20 /* As a special exception, you may create a larger work that contains
21  part or all of the Bison parser skeleton and distribute that work
22  under terms of your choice, so long as that work isn't itself a
23  parser generator using the skeleton or a modified version thereof
24  as a parser skeleton. Alternatively, if you modify or redistribute
25  the parser skeleton itself, you may (at your option) remove this
26  special exception, which will cause the skeleton and the resulting
27  Bison output files to be licensed under the GNU General Public
28  License without this special exception.
29 
30  This special exception was added by the Free Software Foundation in
31  version 2.2 of Bison. */
32 
33 #ifndef YY_YY_PARSER_TAB_H_INCLUDED
34 # define YY_YY_PARSER_TAB_H_INCLUDED
35 /* Debug traces. */
36 #ifndef YYDEBUG
37 # define YYDEBUG 0
38 #endif
39 #if YYDEBUG
40 extern int yydebug;
41 #endif
42 
43 /* Token type. */
44 #ifndef YYTOKENTYPE
45 # define YYTOKENTYPE
47  {
48  QUIT = 258,
49  SET = 259,
50  LET = 260,
51  IN = 261,
52  BEGIN = 262,
53  END = 263,
54  IF = 264,
55  THEN = 265,
56  ELSE = 266,
57  ELIF = 267,
58  FI = 268,
59  AND = 269,
60  OR = 270,
61  NOT = 271,
62  NEXT = 272,
63  DO = 273,
64  DONT = 274,
65  FROM = 275,
66  DOWNTO = 276,
67  WHILE = 277,
68  FOR = 278,
69  OD = 279,
70  CASE = 280,
71  ESAC = 281,
72  REC_FUN = 282,
73  TRUE = 283,
74  FALSE = 284,
75  DIE = 285,
76  BREAK = 286,
77  RETURN = 287,
78  WHATTYPE = 288,
79  SHOWALL = 289,
80  FORGET = 290,
81  OPERATOR = 291,
83  INT = 293,
84  STRING = 294,
85  IDENT = 295,
86  TYPE_ID = 296,
87  TOFILE = 297,
88  ADDTOFILE = 298,
89  FROMFILE = 299,
91  TYPE = 301,
92  ARROW = 302,
93  BECOMES = 303,
94  TLSUB = 304,
96  };
97 #endif
98 
99 /* Value type. */
100 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
101 
102 union YYSTYPE
103 {
104 #line 31 "parser.y" /* yacc.c:1909 */
105 
106  int val; /* For integral constants. */
107  short id_code; /* For identifier codes, or defined types */
108  std::string* str; // string denotation
109  struct { short id, priority; } oper; /* for operator symbols */
111  unsigned short type_code; /* For type names */
112  atlas::interpreter::expr_p expression; /* For generic expressions */
114  atlas::interpreter::raw_let_list decls; /* declarations in a LET expression */
116  struct {
119  } id_sp1;
120  struct {
123  } id_sp;
127 
128 #line 129 "parser.tab.h" /* yacc.c:1909 */
129 };
130 
131 typedef union YYSTYPE YYSTYPE;
132 # define YYSTYPE_IS_TRIVIAL 1
133 # define YYSTYPE_IS_DECLARED 1
134 #endif
135 
136 /* Location type. */
137 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
138 typedef struct YYLTYPE YYLTYPE;
139 struct YYLTYPE
140 {
145 };
146 # define YYLTYPE_IS_DECLARED 1
147 # define YYLTYPE_IS_TRIVIAL 1
148 #endif
149 
150 
151 
152 int yyparse (atlas::interpreter::expr_p* parsed_expr, int* verbosity);
153 
154 #endif /* !YY_YY_PARSER_TAB_H_INCLUDED */
Definition: parser.tab.h:93
int first_column
Definition: parser.tab.h:142
Definition: parser.tab.h:79
int yyparse(atlas::interpreter::expr_p *parsed_expr, int *verbosity)
Definition: parser.tab.c:1838
Definition: parser.tab.h:64
Definition: parser.tab.h:89
atlas::interpreter::raw_patlist patl
Definition: parser.tab.h:122
Definition: parse_types.h:51
Definition: parser.tab.h:74
struct YYSTYPE::@21 id_sp
Definition: parser.tab.h:82
atlas::interpreter::raw_form_stack ini_form
Definition: parser.tab.h:110
Definition: parser.tab.h:76
atlas::interpreter::expr_p expression
Definition: parser.tab.h:112
atlas::interpreter::raw_patlist pl
Definition: parser.tab.h:124
Definition: parser.tab.h:73
int verbosity
Definition: global.cpp:25
Definition: parser.tab.h:87
Definition: parser.tab.h:69
Definition: parser.tab.h:61
int last_column
Definition: parser.tab.h:144
Definition: parser.tab.h:68
int last_line
Definition: parser.tab.h:143
Definition: parser.tab.h:67
Definition: parser.tab.h:72
Definition: parser.tab.h:80
Definition: parser.tab.h:90
Definition: parser.tab.h:65
Definition: parser.tab.h:71
Definition: parser.tab.h:77
Definition: parser.tab.h:81
atlas::interpreter::raw_id_pat ip
Definition: parser.tab.h:115
Definition: parser.tab.h:78
Definition: parser.tab.h:66
Definition: parser.tab.h:52
Definition: parser.tab.h:63
unsigned short type_code
Definition: parser.tab.h:111
Definition: parser.tab.h:49
Definition: parser.tab.h:56
Definition: parser.tab.h:75
Definition: parser.tab.h:83
Definition: axis-types.h:51
atlas::interpreter::raw_type_list typel
Definition: parser.tab.h:121
atlas::interpreter::raw_expr_list expression_list
Definition: parser.tab.h:113
short id_code
Definition: parser.tab.h:107
Definition: parser.tab.h:139
Definition: parser.tab.h:85
Definition: sl_list.h:86
std::string * str
Definition: parser.tab.h:108
Definition: parser.tab.h:62
Definition: parser.tab.h:95
int first_line
Definition: parser.tab.h:141
Definition: parser.tab.h:50
Definition: parser.tab.h:51
yytokentype
Definition: parser.tab.h:46
struct YYSTYPE::@20 id_sp1
Definition: parser.tab.h:86
Definition: parser.tab.h:59
Definition: parser.tab.h:84
Definition: parser.tab.h:60
struct YYSTYPE::@19 oper
Definition: parser.tab.h:48
Definition: parser.tab.h:94
Definition: parser.tab.h:102
int val
Definition: parser.tab.h:106
Definition: parser.tab.h:91
Definition: parser.tab.h:58
Definition: parser.tab.h:70
short id
Definition: parser.tab.h:109
Definition: parser.tab.h:88
short priority
Definition: parser.tab.h:109
Definition: parser.tab.h:57
Definition: parser.tab.h:92
Definition: parser.tab.h:55
Definition: cweave.c:262
Definition: parser.tab.h:53
atlas::interpreter::raw_let_list decls
Definition: parser.tab.h:114
Definition: parse_types.h:156
atlas::interpreter::type_p type_pt
Definition: parser.tab.h:117
Definition: parser.tab.h:54
atlas::interpreter::raw_type_list type_l
Definition: parser.tab.h:126