|
Packit |
a4aae4 |
/* A Bison parser, made by GNU Bison 3.0.4. */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
/* Bison interface for Yacc-like parsers in C
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
This program is free software: you can redistribute it and/or modify
|
|
Packit |
a4aae4 |
it under the terms of the GNU General Public License as published by
|
|
Packit |
a4aae4 |
the Free Software Foundation, either version 3 of the License, or
|
|
Packit |
a4aae4 |
(at your option) any later version.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
This program is distributed in the hope that it will be useful,
|
|
Packit |
a4aae4 |
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
a4aae4 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
Packit |
a4aae4 |
GNU General Public License for more details.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
You should have received a copy of the GNU General Public License
|
|
Packit |
a4aae4 |
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
/* As a special exception, you may create a larger work that contains
|
|
Packit |
a4aae4 |
part or all of the Bison parser skeleton and distribute that work
|
|
Packit |
a4aae4 |
under terms of your choice, so long as that work isn't itself a
|
|
Packit |
a4aae4 |
parser generator using the skeleton or a modified version thereof
|
|
Packit |
a4aae4 |
as a parser skeleton. Alternatively, if you modify or redistribute
|
|
Packit |
a4aae4 |
the parser skeleton itself, you may (at your option) remove this
|
|
Packit |
a4aae4 |
special exception, which will cause the skeleton and the resulting
|
|
Packit |
a4aae4 |
Bison output files to be licensed under the GNU General Public
|
|
Packit |
a4aae4 |
License without this special exception.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
This special exception was added by the Free Software Foundation in
|
|
Packit |
a4aae4 |
version 2.2 of Bison. */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#ifndef YY_DDS_DDS_TAB_HH_INCLUDED
|
|
Packit |
a4aae4 |
# define YY_DDS_DDS_TAB_HH_INCLUDED
|
|
Packit |
a4aae4 |
/* Debug traces. */
|
|
Packit |
a4aae4 |
#ifndef YYDEBUG
|
|
Packit |
a4aae4 |
# define YYDEBUG 1
|
|
Packit |
a4aae4 |
#endif
|
|
Packit |
a4aae4 |
#if YYDEBUG
|
|
Packit |
a4aae4 |
extern int ddsdebug;
|
|
Packit |
a4aae4 |
#endif
|
|
Packit |
a4aae4 |
/* "%code requires" blocks. */
|
|
Packit |
a4aae4 |
#line 47 "dds.yy" /* yacc.c:1915 */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include "config_dap.h"
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include <cstring>
|
|
Packit |
a4aae4 |
#include <cassert>
|
|
Packit |
a4aae4 |
#include <iostream>
|
|
Packit |
a4aae4 |
#include <stack>
|
|
Packit |
a4aae4 |
#include <sstream>
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include "Byte.h"
|
|
Packit |
a4aae4 |
#include "Int16.h"
|
|
Packit |
a4aae4 |
#include "UInt16.h"
|
|
Packit |
a4aae4 |
#include "Int32.h"
|
|
Packit |
a4aae4 |
#include "UInt32.h"
|
|
Packit |
a4aae4 |
#include "Float32.h"
|
|
Packit |
a4aae4 |
#include "Float64.h"
|
|
Packit |
a4aae4 |
#include "Str.h"
|
|
Packit |
a4aae4 |
#include "Url.h"
|
|
Packit |
a4aae4 |
#include "Array.h"
|
|
Packit |
a4aae4 |
#include "Structure.h"
|
|
Packit |
a4aae4 |
#include "Sequence.h"
|
|
Packit |
a4aae4 |
#include "Grid.h"
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include "DDS.h"
|
|
Packit |
a4aae4 |
#include "Error.h"
|
|
Packit |
a4aae4 |
#include "parser.h"
|
|
Packit |
a4aae4 |
#include "util.h"
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
using namespace std;
|
|
Packit |
a4aae4 |
using namespace libdap;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
// These macros are used to access the `arguments' passed to the parser. A
|
|
Packit |
a4aae4 |
// pointer to an error object and a pointer to an integer status variable are
|
|
Packit |
a4aae4 |
// passed in to the parser within a structure (which itself is passed as a
|
|
Packit |
a4aae4 |
// pointer). Note that the ERROR macro explicitly casts OBJ to an ERROR *.
|
|
Packit |
a4aae4 |
// ERROR is no longer used. These parsers now signal problems by throwing
|
|
Packit |
a4aae4 |
// exceptions. 5/22/2002 jhrg
|
|
Packit |
a4aae4 |
#define DDS_OBJ(arg) ((DDS *)((parser_arg *)(arg))->_object)
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
// #define YYPARSE_PARAM arg
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
extern int dds_line_num; /* defined in dds.lex */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#line 90 "dds.tab.hh" /* yacc.c:1915 */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
/* Token type. */
|
|
Packit |
a4aae4 |
#ifndef YYTOKENTYPE
|
|
Packit |
a4aae4 |
# define YYTOKENTYPE
|
|
Packit |
a4aae4 |
enum yytokentype
|
|
Packit |
a4aae4 |
{
|
|
Packit |
a4aae4 |
SCAN_WORD = 258,
|
|
Packit |
a4aae4 |
SCAN_DATASET = 259,
|
|
Packit |
a4aae4 |
SCAN_LIST = 260,
|
|
Packit |
a4aae4 |
SCAN_SEQUENCE = 261,
|
|
Packit |
a4aae4 |
SCAN_STRUCTURE = 262,
|
|
Packit |
a4aae4 |
SCAN_FUNCTION = 263,
|
|
Packit |
a4aae4 |
SCAN_GRID = 264,
|
|
Packit |
a4aae4 |
SCAN_BYTE = 265,
|
|
Packit |
a4aae4 |
SCAN_INT16 = 266,
|
|
Packit |
a4aae4 |
SCAN_UINT16 = 267,
|
|
Packit |
a4aae4 |
SCAN_INT32 = 268,
|
|
Packit |
a4aae4 |
SCAN_UINT32 = 269,
|
|
Packit |
a4aae4 |
SCAN_FLOAT32 = 270,
|
|
Packit |
a4aae4 |
SCAN_FLOAT64 = 271,
|
|
Packit |
a4aae4 |
SCAN_STRING = 272,
|
|
Packit |
a4aae4 |
SCAN_URL = 273
|
|
Packit |
a4aae4 |
};
|
|
Packit |
a4aae4 |
#endif
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
/* Value type. */
|
|
Packit |
a4aae4 |
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
union YYSTYPE
|
|
Packit |
a4aae4 |
{
|
|
Packit |
a4aae4 |
#line 131 "dds.yy" /* yacc.c:1915 */
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
bool boolean;
|
|
Packit |
a4aae4 |
char word[ID_MAX];
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#line 126 "dds.tab.hh" /* yacc.c:1915 */
|
|
Packit |
a4aae4 |
};
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
typedef union YYSTYPE YYSTYPE;
|
|
Packit |
a4aae4 |
# define YYSTYPE_IS_TRIVIAL 1
|
|
Packit |
a4aae4 |
# define YYSTYPE_IS_DECLARED 1
|
|
Packit |
a4aae4 |
#endif
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
extern YYSTYPE ddslval;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
int ddsparse (parser_arg *arg);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#endif /* !YY_DDS_DDS_TAB_HH_INCLUDED */
|