mirror of https://github.com/ecmwf/eccodes.git
332 lines
7.6 KiB
C
332 lines
7.6 KiB
C
|
|
/* A Bison parser, made by GNU Bison 2.4.1. */
|
|
|
|
/* Skeleton interface for Bison's Yacc-like parsers in C
|
|
|
|
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
|
|
Free Software Foundation, Inc.
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
|
|
|
/* As a special exception, you may create a larger work that contains
|
|
part or all of the Bison parser skeleton and distribute that work
|
|
under terms of your choice, so long as that work isn't itself a
|
|
parser generator using the skeleton or a modified version thereof
|
|
as a parser skeleton. Alternatively, if you modify or redistribute
|
|
the parser skeleton itself, you may (at your option) remove this
|
|
special exception, which will cause the skeleton and the resulting
|
|
Bison output files to be licensed under the GNU General Public
|
|
License without this special exception.
|
|
|
|
This special exception was added by the Free Software Foundation in
|
|
version 2.2 of Bison. */
|
|
|
|
|
|
/* Tokens. */
|
|
#ifndef YYTOKENTYPE
|
|
# define YYTOKENTYPE
|
|
/* Put the tokens into the symbol table, so that GDB and other debuggers
|
|
know about them. */
|
|
enum grib_yytokentype {
|
|
LOWERCASE = 258,
|
|
IF = 259,
|
|
IF_TRANSIENT = 260,
|
|
ELSE = 261,
|
|
END = 262,
|
|
CLOSE = 263,
|
|
UNSIGNED = 264,
|
|
TEMPLATE = 265,
|
|
TEMPLATE_NOFAIL = 266,
|
|
TRIGGER = 267,
|
|
ASCII = 268,
|
|
GROUP = 269,
|
|
NON_ALPHA = 270,
|
|
KSEC1EXPVER = 271,
|
|
LABEL = 272,
|
|
LIST = 273,
|
|
IS_IN_LIST = 274,
|
|
IS_IN_DICT = 275,
|
|
IS_INTEGER = 276,
|
|
TO_INTEGER = 277,
|
|
TO_STRING = 278,
|
|
SEX2DEC = 279,
|
|
WHILE = 280,
|
|
IBMFLOAT = 281,
|
|
SIGNED = 282,
|
|
UINT8 = 283,
|
|
INT8 = 284,
|
|
UINT16 = 285,
|
|
INT16 = 286,
|
|
UINT16_LITTLE_ENDIAN = 287,
|
|
INT16_LITTLE_ENDIAN = 288,
|
|
UINT32 = 289,
|
|
INT32 = 290,
|
|
UINT32_LITTLE_ENDIAN = 291,
|
|
INT32_LITTLE_ENDIAN = 292,
|
|
UINT64 = 293,
|
|
INT64 = 294,
|
|
UINT64_LITTLE_ENDIAN = 295,
|
|
INT64_LITTLE_ENDIAN = 296,
|
|
BLOB = 297,
|
|
BYTE = 298,
|
|
CODETABLE = 299,
|
|
SMART_TABLE = 300,
|
|
DICTIONARY = 301,
|
|
COMPLEX_CODETABLE = 302,
|
|
LOOKUP = 303,
|
|
ALIAS = 304,
|
|
UNALIAS = 305,
|
|
META = 306,
|
|
POS = 307,
|
|
INTCONST = 308,
|
|
TRANS = 309,
|
|
FLAGBIT = 310,
|
|
CONCEPT = 311,
|
|
GETENV = 312,
|
|
HASH_ARRAY = 313,
|
|
CONCEPT_NOFAIL = 314,
|
|
NIL = 315,
|
|
DUMMY = 316,
|
|
MODIFY = 317,
|
|
READ_ONLY = 318,
|
|
STRING_TYPE = 319,
|
|
LONG_TYPE = 320,
|
|
DOUBLE_TYPE = 321,
|
|
NO_COPY = 322,
|
|
DUMP = 323,
|
|
JSON = 324,
|
|
XML = 325,
|
|
NO_FAIL = 326,
|
|
EDITION_SPECIFIC = 327,
|
|
OVERRIDE = 328,
|
|
HIDDEN = 329,
|
|
CAN_BE_MISSING = 330,
|
|
MISSING = 331,
|
|
CONSTRAINT = 332,
|
|
COPY_OK = 333,
|
|
WHEN = 334,
|
|
SET = 335,
|
|
SET_NOFAIL = 336,
|
|
WRITE = 337,
|
|
APPEND = 338,
|
|
PRINT = 339,
|
|
EXPORT = 340,
|
|
REMOVE = 341,
|
|
RENAME = 342,
|
|
SKIP = 343,
|
|
PAD = 344,
|
|
SECTION_PADDING = 345,
|
|
MESSAGE = 346,
|
|
MESSAGE_COPY = 347,
|
|
PADTO = 348,
|
|
PADTOEVEN = 349,
|
|
PADTOMULTIPLE = 350,
|
|
G1_HALF_BYTE = 351,
|
|
G1_MESSAGE_LENGTH = 352,
|
|
G1_SECTION4_LENGTH = 353,
|
|
SECTION_LENGTH = 354,
|
|
LENGTH = 355,
|
|
FLAG = 356,
|
|
ITERATOR = 357,
|
|
NEAREST = 358,
|
|
BOX = 359,
|
|
KSEC = 360,
|
|
ASSERT = 361,
|
|
SUBSTR = 362,
|
|
CASE = 363,
|
|
SWITCH = 364,
|
|
DEFAULT = 365,
|
|
EQ = 366,
|
|
NE = 367,
|
|
GE = 368,
|
|
LE = 369,
|
|
LT = 370,
|
|
GT = 371,
|
|
BIT = 372,
|
|
BITOFF = 373,
|
|
AND = 374,
|
|
OR = 375,
|
|
NOT = 376,
|
|
IS = 377,
|
|
IDENT = 378,
|
|
STRING = 379,
|
|
INTEGER = 380,
|
|
FLOAT = 381
|
|
};
|
|
#endif
|
|
/* Tokens. */
|
|
#define LOWERCASE 258
|
|
#define IF 259
|
|
#define IF_TRANSIENT 260
|
|
#define ELSE 261
|
|
#define END 262
|
|
#define CLOSE 263
|
|
#define UNSIGNED 264
|
|
#define TEMPLATE 265
|
|
#define TEMPLATE_NOFAIL 266
|
|
#define TRIGGER 267
|
|
#define ASCII 268
|
|
#define GROUP 269
|
|
#define NON_ALPHA 270
|
|
#define KSEC1EXPVER 271
|
|
#define LABEL 272
|
|
#define LIST 273
|
|
#define IS_IN_LIST 274
|
|
#define IS_IN_DICT 275
|
|
#define IS_INTEGER 276
|
|
#define TO_INTEGER 277
|
|
#define TO_STRING 278
|
|
#define SEX2DEC 279
|
|
#define WHILE 280
|
|
#define IBMFLOAT 281
|
|
#define SIGNED 282
|
|
#define UINT8 283
|
|
#define INT8 284
|
|
#define UINT16 285
|
|
#define INT16 286
|
|
#define UINT16_LITTLE_ENDIAN 287
|
|
#define INT16_LITTLE_ENDIAN 288
|
|
#define UINT32 289
|
|
#define INT32 290
|
|
#define UINT32_LITTLE_ENDIAN 291
|
|
#define INT32_LITTLE_ENDIAN 292
|
|
#define UINT64 293
|
|
#define INT64 294
|
|
#define UINT64_LITTLE_ENDIAN 295
|
|
#define INT64_LITTLE_ENDIAN 296
|
|
#define BLOB 297
|
|
#define BYTE 298
|
|
#define CODETABLE 299
|
|
#define SMART_TABLE 300
|
|
#define DICTIONARY 301
|
|
#define COMPLEX_CODETABLE 302
|
|
#define LOOKUP 303
|
|
#define ALIAS 304
|
|
#define UNALIAS 305
|
|
#define META 306
|
|
#define POS 307
|
|
#define INTCONST 308
|
|
#define TRANS 309
|
|
#define FLAGBIT 310
|
|
#define CONCEPT 311
|
|
#define GETENV 312
|
|
#define HASH_ARRAY 313
|
|
#define CONCEPT_NOFAIL 314
|
|
#define NIL 315
|
|
#define DUMMY 316
|
|
#define MODIFY 317
|
|
#define READ_ONLY 318
|
|
#define STRING_TYPE 319
|
|
#define LONG_TYPE 320
|
|
#define DOUBLE_TYPE 321
|
|
#define NO_COPY 322
|
|
#define DUMP 323
|
|
#define JSON 324
|
|
#define XML 325
|
|
#define NO_FAIL 326
|
|
#define EDITION_SPECIFIC 327
|
|
#define OVERRIDE 328
|
|
#define HIDDEN 329
|
|
#define CAN_BE_MISSING 330
|
|
#define MISSING 331
|
|
#define CONSTRAINT 332
|
|
#define COPY_OK 333
|
|
#define WHEN 334
|
|
#define SET 335
|
|
#define SET_NOFAIL 336
|
|
#define WRITE 337
|
|
#define APPEND 338
|
|
#define PRINT 339
|
|
#define EXPORT 340
|
|
#define REMOVE 341
|
|
#define RENAME 342
|
|
#define SKIP 343
|
|
#define PAD 344
|
|
#define SECTION_PADDING 345
|
|
#define MESSAGE 346
|
|
#define MESSAGE_COPY 347
|
|
#define PADTO 348
|
|
#define PADTOEVEN 349
|
|
#define PADTOMULTIPLE 350
|
|
#define G1_HALF_BYTE 351
|
|
#define G1_MESSAGE_LENGTH 352
|
|
#define G1_SECTION4_LENGTH 353
|
|
#define SECTION_LENGTH 354
|
|
#define LENGTH 355
|
|
#define FLAG 356
|
|
#define ITERATOR 357
|
|
#define NEAREST 358
|
|
#define BOX 359
|
|
#define KSEC 360
|
|
#define ASSERT 361
|
|
#define SUBSTR 362
|
|
#define CASE 363
|
|
#define SWITCH 364
|
|
#define DEFAULT 365
|
|
#define EQ 366
|
|
#define NE 367
|
|
#define GE 368
|
|
#define LE 369
|
|
#define LT 370
|
|
#define GT 371
|
|
#define BIT 372
|
|
#define BITOFF 373
|
|
#define AND 374
|
|
#define OR 375
|
|
#define NOT 376
|
|
#define IS 377
|
|
#define IDENT 378
|
|
#define STRING 379
|
|
#define INTEGER 380
|
|
#define FLOAT 381
|
|
|
|
|
|
|
|
|
|
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
|
typedef union YYSTYPE
|
|
{
|
|
|
|
/* Line 1676 of yacc.c */
|
|
#line 37 "griby.y"
|
|
|
|
char *str;
|
|
long lval;
|
|
double dval;
|
|
grib_darray *dvalue;
|
|
grib_iarray *ivalue;
|
|
grib_action *act;
|
|
grib_arguments *explist;
|
|
grib_expression *exp;
|
|
grib_concept_condition *concept_condition;
|
|
grib_concept_value *concept_value;
|
|
grib_hash_array_value *hash_array_value;
|
|
grib_case *case_value;
|
|
grib_rule *rules;
|
|
grib_rule_entry *rule_entry;
|
|
|
|
|
|
|
|
/* Line 1676 of yacc.c */
|
|
#line 323 "y.tab.h"
|
|
} YYSTYPE;
|
|
# define YYSTYPE_IS_TRIVIAL 1
|
|
# define grib_yystype YYSTYPE /* obsolescent; will be withdrawn */
|
|
# define YYSTYPE_IS_DECLARED 1
|
|
#endif
|
|
|
|
extern YYSTYPE grib_yylval;
|
|
|
|
|