blob: dc6301d92607fe134ca071bb0d2634d9742bcfbd [file] [log] [blame]
Sol Boucher69b88bf2015-02-26 11:47:19 -08001/* A Bison parser, made by GNU Bison 3.0.2. */
2
3/* Bison interface for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2013 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_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. */
Sol Boucherb9740812015-03-18 10:13:48 -070043#line 37 "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
63struct flashmap_descriptor *parse_descriptor(char *name,
64 struct unsigned_option offset, struct unsigned_option size,
65 struct descriptor_list children);
66void 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,
77 STRING = 260
78 };
79#endif
80/* Tokens. */
81#define INTEGER 258
82#define OCTAL 259
83#define STRING 260
84
85/* Value type. */
86#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
87typedef union YYSTYPE YYSTYPE;
88union YYSTYPE
89{
Sol Boucherb9740812015-03-18 10:13:48 -070090#line 29 "fmd_parser.y" /* yacc.c:1909 */
Sol Boucher69b88bf2015-02-26 11:47:19 -080091
92 unsigned intval;
93 char *strval;
94 struct unsigned_option maybe_intval;
95 struct flashmap_descriptor *region_ptr;
96 struct descriptor_list region_listhdr;
97
98#line 99 "y.tab.h" /* yacc.c:1909 */
99};
100# define YYSTYPE_IS_TRIVIAL 1
101# define YYSTYPE_IS_DECLARED 1
102#endif
103
104
105extern YYSTYPE yylval;
106
107int yyparse (void);
108
109#endif /* !YY_YY_Y_TAB_H_INCLUDED */