blob: 07c0259f941078389d548754a30b19ee67773aa7 [file] [log] [blame]
Hung-Te Lin9497fcb2019-03-04 14:28:37 +08001/* A Bison parser, made by GNU Bison 3.0.4. */
Sol Boucher69b88bf2015-02-26 11:47:19 -08002
3/* Bison interface for Yacc-like parsers in C
4
Hung-Te Lin9497fcb2019-03-04 14:28:37 +08005 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
Sol Boucher69b88bf2015-02-26 11:47:19 -08006
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_Y_TAB_H_INCLUDED
34# define YY_YY_Y_TAB_H_INCLUDED
35/* Debug traces. */
36#ifndef YYDEBUG
37# define YYDEBUG 0
38#endif
39#if YYDEBUG
40extern int yydebug;
41#endif
42/* "%code requires" blocks. */
Hung-Te Lin9497fcb2019-03-04 14:28:37 +080043#line 34 "fmd_parser.y" /* yacc.c:1909 */
Sol Boucher69b88bf2015-02-26 11:47:19 -080044
45#include "fmd.h"
46#include "option.h"
47
48#include <stdbool.h>
49
50struct descriptor_node {
51 struct flashmap_descriptor *val;
52 struct descriptor_node *next;
53};
54
55struct descriptor_list {
56 size_t len;
57 struct descriptor_node *head;
58 struct descriptor_node *tail;
59};
60
61extern struct flashmap_descriptor *res;
62
Hung-Te Lin9497fcb2019-03-04 14:28:37 +080063struct flashmap_descriptor *parse_descriptor(
64 char *name, union flashmap_flags flags, struct unsigned_option offset,
65 struct unsigned_option size, struct descriptor_list children);
Sol Boucher69b88bf2015-02-26 11:47:19 -080066void yyerror(const char *s);
67
68#line 69 "y.tab.h" /* yacc.c:1909 */
69
70/* Token type. */
71#ifndef YYTOKENTYPE
72# define YYTOKENTYPE
73 enum yytokentype
74 {
75 INTEGER = 258,
76 OCTAL = 259,
Hung-Te Lin9497fcb2019-03-04 14:28:37 +080077 STRING = 260,
Hung-Te Lin49a44502019-03-04 15:41:09 +080078 FLAG_CBFS = 261,
79 FLAG_PRESERVE = 262
Sol Boucher69b88bf2015-02-26 11:47:19 -080080 };
81#endif
82/* Tokens. */
83#define INTEGER 258
84#define OCTAL 259
85#define STRING 260
Hung-Te Lin9497fcb2019-03-04 14:28:37 +080086#define FLAG_CBFS 261
Hung-Te Lin49a44502019-03-04 15:41:09 +080087#define FLAG_PRESERVE 262
Sol Boucher69b88bf2015-02-26 11:47:19 -080088
89/* Value type. */
90#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
Hung-Te Lin9497fcb2019-03-04 14:28:37 +080091
Sol Boucher69b88bf2015-02-26 11:47:19 -080092union YYSTYPE
93{
Hung-Te Lin9497fcb2019-03-04 14:28:37 +080094#line 25 "fmd_parser.y" /* yacc.c:1909 */
Sol Boucher69b88bf2015-02-26 11:47:19 -080095
96 unsigned intval;
97 char *strval;
98 struct unsigned_option maybe_intval;
99 struct flashmap_descriptor *region_ptr;
Hung-Te Lin9497fcb2019-03-04 14:28:37 +0800100 union flashmap_flags flags;
Sol Boucher69b88bf2015-02-26 11:47:19 -0800101 struct descriptor_list region_listhdr;
102
Hung-Te Lin49a44502019-03-04 15:41:09 +0800103#line 104 "y.tab.h" /* yacc.c:1909 */
Sol Boucher69b88bf2015-02-26 11:47:19 -0800104};
Hung-Te Lin9497fcb2019-03-04 14:28:37 +0800105
106typedef union YYSTYPE YYSTYPE;
Sol Boucher69b88bf2015-02-26 11:47:19 -0800107# define YYSTYPE_IS_TRIVIAL 1
108# define YYSTYPE_IS_DECLARED 1
109#endif
110
111
112extern YYSTYPE yylval;
113
114int yyparse (void);
115
116#endif /* !YY_YY_Y_TAB_H_INCLUDED */