#include "SAMRAI_config.h"
#include <math.h>
#include <STL_SSTREAM_HEADER_FILE>
#include "tbox/Array.h"
#include "tbox/Complex.h"
#include "tbox/Database.h"
#include "tbox/Parser.h"
#include <string>
Namespaces | |
namespace | std |
Classes | |
struct | KeyData |
union | YYSTYPE |
union | yyalloc |
struct | arith_functions |
Defines | |
#define | YYBISON 1 |
#define | YYSKELETON_NAME "yacc.c" |
#define | YYPURE 0 |
#define | YYLSP_NEEDED 0 |
#define | T_AND 258 |
#define | T_ASSIGN 259 |
#define | T_CHAR 260 |
#define | T_CLOSE_CURLY 261 |
#define | T_CLOSE_PAREN 262 |
#define | T_CLOSE_SQBKT 263 |
#define | T_COMMA 264 |
#define | T_DIV 265 |
#define | T_DOUBLE 266 |
#define | T_ELSE 267 |
#define | T_EXP 268 |
#define | T_EQUALS 269 |
#define | T_GREATER_EQUALS 270 |
#define | T_GREATER 271 |
#define | T_LESS_EQUALS 272 |
#define | T_LESS 273 |
#define | T_FALSE 274 |
#define | T_INTEGER 275 |
#define | T_KEYWORD 276 |
#define | T_MINUS 277 |
#define | T_MULT 278 |
#define | T_NOT 279 |
#define | T_NOT_EQUALS 280 |
#define | T_OR 281 |
#define | T_OPEN_CURLY 282 |
#define | T_OPEN_PAREN 283 |
#define | T_OPEN_SQBKT 284 |
#define | T_PLUS 285 |
#define | T_QUESTION 286 |
#define | T_SEMI 287 |
#define | T_STRING 288 |
#define | T_TRUE 289 |
#define | T_NEGATION 290 |
#define | NULL (0) |
#define | KEY_COMPLEX (0) |
#define | KEY_DOUBLE (1) |
#define | KEY_INTEGER (2) |
#define | KEY_BOOL (3) |
#define | KEY_BOX (4) |
#define | KEY_CHAR (5) |
#define | KEY_STRING (6) |
#define | IS_NUMBER(X) (((X) >= 0) && ((X) < KEY_BOOL)) |
#define | PROMOTE(X, Y) ((X) < (Y) ? (X) : (Y)) |
#define | YYDEBUG 0 |
#define | YYERROR_VERBOSE 0 |
#define | yystype YYSTYPE |
#define | YYSTYPE_IS_DECLARED 1 |
#define | YYSTYPE_IS_TRIVIAL 1 |
#define | YYFREE free |
#define | YYMALLOC malloc |
#define | YYSTACK_ALLOC YYMALLOC |
#define | YYSTACK_FREE YYFREE |
#define | YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) |
#define | YYSTACK_BYTES(N) |
#define | YYCOPY(To, From, Count) |
#define | YYSTACK_RELOCATE(Stack) |
#define | YYFINAL 3 |
#define | YYLAST 249 |
#define | YYNTOKENS 36 |
#define | YYNNTS 13 |
#define | YYNRULES 44 |
#define | YYNSTATES 83 |
#define | YYUNDEFTOK 2 |
#define | YYMAXUTOK 290 |
#define | YYTRANSLATE(YYX) ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
#define | YYPACT_NINF -21 |
#define | YYTABLE_NINF -1 |
#define | YYSIZE_T unsigned int |
#define | yyerrok (yyerrstatus = 0) |
#define | yyclearin (SAMRAI_yychar = YYEMPTY) |
#define | YYEMPTY (-2) |
#define | YYEOF 0 |
#define | YYACCEPT goto yyacceptlab |
#define | YYABORT goto yyabortlab |
#define | YYERROR goto yyerrorlab |
#define | YYFAIL goto yyerrlab |
#define | YYRECOVERING() (!!yyerrstatus) |
#define | YYBACKUP(Token, Value) |
#define | YYTERROR 1 |
#define | YYERRCODE 256 |
#define | YYLLOC_DEFAULT(Current, Rhs, N) |
#define | YYLEX yylex () |
#define | YYDPRINTF(Args) do {} while (0) |
#define | YYDSYMPRINT(Args) do {} while (0) |
#define | YYDSYMPRINTF(Title, Token, Value, Location) do {} while (0) |
#define | YY_STACK_PRINT(Bottom, Top) do {} while (0) |
#define | YY_REDUCE_PRINT(Rule) do {} while (0) |
#define | YYINITDEPTH 200 |
#define | YYMAXDEPTH 10000 |
#define | YYPOPSTACK (yyvsp--, yyssp--) |
Typedefs | |
typedef short | yysigned_char |
Enumerations | |
enum | yytokentype { T_AND = 258, T_ASSIGN = 259, T_CHAR = 260, T_CLOSE_CURLY = 261, T_CLOSE_PAREN = 262, T_CLOSE_SQBKT = 263, T_COMMA = 264, T_DIV = 265, T_DOUBLE = 266, T_ELSE = 267, T_EXP = 268, T_EQUALS = 269, T_GREATER_EQUALS = 270, T_GREATER = 271, T_LESS_EQUALS = 272, T_LESS = 273, T_FALSE = 274, T_INTEGER = 275, T_KEYWORD = 276, T_MINUS = 277, T_MULT = 278, T_NOT = 279, T_NOT_EQUALS = 280, T_OR = 281, T_OPEN_CURLY = 282, T_OPEN_PAREN = 283, T_OPEN_SQBKT = 284, T_PLUS = 285, T_QUESTION = 286, T_SEMI = 287, T_STRING = 288, T_TRUE = 289, T_NEGATION = 290, T_AND = 258, T_ASSIGN = 259, T_CHAR = 260, T_CLOSE_CURLY = 261, T_CLOSE_PAREN = 262, T_CLOSE_SQBKT = 263, T_COMMA = 264, T_DIV = 265, T_DOUBLE = 266, T_ELSE = 267, T_EXP = 268, T_EQUALS = 269, T_GREATER_EQUALS = 270, T_GREATER = 271, T_LESS_EQUALS = 272, T_LESS = 273, T_FALSE = 274, T_INTEGER = 275, T_KEYWORD = 276, T_MINUS = 277, T_MULT = 278, T_NOT = 279, T_NOT_EQUALS = 280, T_OR = 281, T_OPEN_CURLY = 282, T_OPEN_PAREN = 283, T_OPEN_SQBKT = 284, T_PLUS = 285, T_QUESTION = 286, T_SEMI = 287, T_STRING = 288, T_TRUE = 289, T_NEGATION = 290 } |
Functions | |
int | yylex () |
void | yyerror (const char *const error) |
static void | delete_list (KeyData *) |
static void | to_boolean (KeyData *) |
static void | to_integer (KeyData *) |
static void | to_double (KeyData *) |
static void | to_complex (KeyData *) |
static KeyData * | binary_op (KeyData *, KeyData *, const int) |
static KeyData * | compare_op (KeyData *, KeyData *, const int) |
static KeyData * | eval_function (KeyData *, const string &) |
static KeyData * | lookup_variable (const string &, const int, const bool) |
static void | yydestruct (int yytype, YYSTYPE *yyvaluep) |
int | yyparse () |
static double | imag_thunk (const dcomplex &a) |
static double | real_thunk (const dcomplex &a) |
void | parser_static_table_initialize () |
Variables | |
static string | type_names [] |
static const unsigned char | yytranslate [] |
static const unsigned char | yyr1 [] |
static const unsigned char | yyr2 [] |
static const unsigned char | yydefact [] |
static const yysigned_char | yydefgoto [] |
static const short | yypact [] |
static const yysigned_char | yypgoto [] |
static const unsigned char | yytable [] |
static const yysigned_char | yycheck [] |
static const unsigned char | yystos [] |
int | SAMRAI_yychar |
YYSTYPE | SAMRAI_yylval |
int | SAMRAI_yynerrs |
static arith_functions | af [20] |
#define YYBISON 1 |
#define YYSKELETON_NAME "yacc.c" |
#define YYPURE 0 |
#define YYLSP_NEEDED 0 |
#define T_AND 258 |
#define T_ASSIGN 259 |
#define T_CHAR 260 |
#define T_CLOSE_CURLY 261 |
#define T_CLOSE_PAREN 262 |
#define T_CLOSE_SQBKT 263 |
#define T_COMMA 264 |
#define T_DIV 265 |
#define T_DOUBLE 266 |
#define T_ELSE 267 |
#define T_EXP 268 |
#define T_EQUALS 269 |
#define T_GREATER_EQUALS 270 |
#define T_GREATER 271 |
#define T_LESS_EQUALS 272 |
#define T_LESS 273 |
#define T_FALSE 274 |
#define T_INTEGER 275 |
#define T_KEYWORD 276 |
#define T_MINUS 277 |
#define T_MULT 278 |
#define T_NOT 279 |
#define T_NOT_EQUALS 280 |
#define T_OR 281 |
#define T_OPEN_CURLY 282 |
#define T_OPEN_PAREN 283 |
#define T_OPEN_SQBKT 284 |
#define T_PLUS 285 |
#define T_QUESTION 286 |
#define T_SEMI 287 |
#define T_STRING 288 |
#define T_TRUE 289 |
#define T_NEGATION 290 |
#define NULL (0) |
#define KEY_COMPLEX (0) |
#define KEY_DOUBLE (1) |
#define KEY_INTEGER (2) |
#define KEY_BOOL (3) |
#define KEY_BOX (4) |
#define KEY_CHAR (5) |
#define KEY_STRING (6) |
#define IS_NUMBER | ( | X | ) | (((X) >= 0) && ((X) < KEY_BOOL)) |
#define PROMOTE | ( | X, | |||
Y | ) | ((X) < (Y) ? (X) : (Y)) |
#define YYDEBUG 0 |
#define YYERROR_VERBOSE 0 |
#define yystype YYSTYPE |
#define YYSTYPE_IS_DECLARED 1 |
#define YYSTYPE_IS_TRIVIAL 1 |
#define YYFREE free |
#define YYMALLOC malloc |
#define YYSTACK_ALLOC YYMALLOC |
#define YYSTACK_FREE YYFREE |
#define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) |
#define YYSTACK_BYTES | ( | N | ) |
Value:
((N) * (sizeof (short) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM)
#define YYCOPY | ( | To, | |||
From, | |||||
Count | ) |
Value:
do \ { \ register YYSIZE_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (To)[yyi] = (From)[yyi]; \ } \ while (0)
#define YYSTACK_RELOCATE | ( | Stack | ) |
Value:
do \ { \ YYSIZE_T yynewbytes; \ YYCOPY (&yyptr->Stack, Stack, yysize); \ Stack = &yyptr->Stack; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ while (0)
#define YYFINAL 3 |
#define YYLAST 249 |
#define YYNTOKENS 36 |
#define YYNNTS 13 |
#define YYNRULES 44 |
#define YYNSTATES 83 |
#define YYUNDEFTOK 2 |
#define YYMAXUTOK 290 |
#define YYTRANSLATE | ( | YYX | ) | ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
#define YYPACT_NINF -21 |
#define YYTABLE_NINF -1 |
#define YYSIZE_T unsigned int |
#define yyerrok (yyerrstatus = 0) |
#define yyclearin (SAMRAI_yychar = YYEMPTY) |
#define YYEMPTY (-2) |
#define YYEOF 0 |
#define YYACCEPT goto yyacceptlab |
#define YYABORT goto yyabortlab |
#define YYERROR goto yyerrorlab |
#define YYFAIL goto yyerrlab |
#define YYRECOVERING | ( | ) | (!!yyerrstatus) |
#define YYBACKUP | ( | Token, | |||
Value | ) |
Value:
do \ if (SAMRAI_yychar == YYEMPTY && yylen == 1) \ { \ SAMRAI_yychar = (Token); \ SAMRAI_yylval = (Value); \ yytoken = YYTRANSLATE (SAMRAI_yychar); \ YYPOPSTACK; \ goto yybackup; \ } \ else \ { \ yyerror ("syntax error: cannot back up");\ YYERROR; \ } \ while (0)
#define YYTERROR 1 |
#define YYERRCODE 256 |
#define YYLLOC_DEFAULT | ( | Current, | |||
Rhs, | |||||
N | ) |
Value:
((Current).first_line = (Rhs)[1].first_line, \ (Current).first_column = (Rhs)[1].first_column, \ (Current).last_line = (Rhs)[N].last_line, \ (Current).last_column = (Rhs)[N].last_column)
#define YYLEX yylex () |
#define YYDPRINTF | ( | Args | ) | do {} while (0) |
#define YYDSYMPRINT | ( | Args | ) | do {} while (0) |
#define YYDSYMPRINTF | ( | Title, | |||
Token, | |||||
Value, | |||||
Location | ) | do {} while (0) |
#define YY_STACK_PRINT | ( | Bottom, | |||
Top | ) | do {} while (0) |
#define YY_REDUCE_PRINT | ( | Rule | ) | do {} while (0) |
#define YYINITDEPTH 200 |
#define YYMAXDEPTH 10000 |
#define YYPOPSTACK (yyvsp--, yyssp--) |
typedef short yysigned_char |
enum yytokentype |
int yylex | ( | ) |
void yyerror | ( | const char *const | error | ) |
static void delete_list | ( | KeyData * | ) | [static] |
static void to_boolean | ( | KeyData * | ) | [static] |
static void to_integer | ( | KeyData * | ) | [static] |
static void to_double | ( | KeyData * | ) | [static] |
static void to_complex | ( | KeyData * | ) | [static] |
static KeyData * lookup_variable | ( | const string & | , | |
const | int, | |||
const | bool | |||
) | [static] |
static void yydestruct | ( | int | yytype, | |
YYSTYPE * | yyvaluep | |||
) | [static] |
int yyparse | ( | ) |
static double imag_thunk | ( | const dcomplex & | a | ) | [static] |
static double real_thunk | ( | const dcomplex & | a | ) | [static] |
void parser_static_table_initialize | ( | ) |
string type_names[] [static] |
Initial value:
{ "complex", "double", "int", "bool", "box", "char", "string" }
const unsigned char yytranslate[] [static] |
const unsigned char yyr1[] [static] |
Initial value:
{ 0, 36, 37, 38, 38, 40, 39, 41, 39, 39, 42, 42, 43, 43, 43, 43, 43, 44, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 45, 45, 45, 45, 45, 45, 45, 45, 46, 47, 48 }
const unsigned char yyr2[] [static] |
Initial value:
{ 0, 2, 1, 0, 2, 0, 5, 0, 4, 1, 1, 3, 1, 1, 4, 3, 4, 0, 8, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 5, 5, 3 }
const unsigned char yydefact[] [static] |
Initial value:
{ 3, 0, 2, 1, 0, 9, 4, 7, 5, 0, 3, 37, 39, 35, 40, 13, 0, 0, 0, 0, 41, 34, 8, 10, 12, 38, 36, 0, 0, 0, 33, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 15, 0, 17, 0, 0, 11, 21, 31, 32, 22, 24, 25, 26, 27, 29, 30, 23, 20, 28, 16, 14, 0, 0, 44, 0, 42, 0, 43, 0, 0, 18 }
const yysigned_char yydefgoto[] [static] |
Initial value:
{ -1, 1, 2, 6, 10, 9, 22, 23, 74, 24, 25, 26, 34 }
const short yypact[] [static] |
Initial value:
{ -21, 10, -17, -21, 7, -21, -21, -21, -21, 28, -21, -21, -21, -21, -21, -20, 28, 28, 28, -14, -21, -21, 8, 183, -21, -21, -21, 69, 28, 28, -21, 219, 56, 28, 9, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, -21, 81, 102, -21, 28, -21, -2, -14, 183, 219, 22, 22, 70, 70, 70, 70, 70, -7, 22, 70, 201, -7, -21, -21, 123, 28, -21, 30, -21, 144, -21, 28, 165, -21 }
const yysigned_char yypgoto[] [static] |
Initial value:
{ -21, -21, 26, -21, -21, -21, 11, -16, -21, -21, -21, -21, -15 }
const unsigned char yytable[] [static] |
Initial value:
{ 30, 31, 32, 37, 4, 75, 38, 35, 28, 29, 3, 7, 50, 51, 33, 5, 45, 35, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 11, 8, 38, 27, 73, 79, 12, 0, 76, 0, 0, 55, 0, 0, 13, 14, 15, 16, 0, 17, 0, 0, 0, 18, 19, 78, 36, 0, 20, 21, 52, 81, 53, 37, 0, 0, 38, 39, 40, 41, 42, 43, 49, 0, 0, 44, 45, 37, 46, 47, 38, 36, 0, 48, 54, 71, 0, 4, 37, 44, 45, 38, 39, 40, 41, 42, 43, 48, 5, 0, 44, 45, 36, 46, 47, 0, 0, 72, 48, 37, 0, 0, 38, 39, 40, 41, 42, 43, 0, 0, 0, 44, 45, 36, 46, 47, 0, 77, 0, 48, 37, 0, 0, 38, 39, 40, 41, 42, 43, 0, 0, 0, 44, 45, 36, 46, 47, 0, 0, 0, 48, 37, 0, 80, 38, 39, 40, 41, 42, 43, 0, 0, 0, 44, 45, 36, 46, 47, 0, 82, 0, 48, 37, 0, 0, 38, 39, 40, 41, 42, 43, 0, 0, 36, 44, 45, 0, 46, 47, 0, 37, 0, 48, 38, 39, 40, 41, 42, 43, 0, 0, 36, 44, 45, 0, 46, 47, 0, 37, 0, 48, 38, 39, 40, 41, 42, 43, 0, 0, 0, 44, 45, 0, 46, 0, 0, 37, 0, 48, 38, 39, 40, 41, 42, 43, 0, 0, 0, 44, 45, 0, 46, 0, 0, 0, 0, 48 }
const yysigned_char yycheck[] [static] |
Initial value:
{ 16, 17, 18, 10, 21, 7, 13, 9, 28, 29, 0, 4, 28, 29, 28, 32, 23, 9, 9, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 5, 27, 13, 10, 53, 8, 11, -1, 56, -1, -1, 33, -1, -1, 19, 20, 21, 22, -1, 24, -1, -1, -1, 28, 29, 74, 3, -1, 33, 34, 7, 80, 9, 10, -1, -1, 13, 14, 15, 16, 17, 18, 6, -1, -1, 22, 23, 10, 25, 26, 13, 3, -1, 30, 31, 7, -1, 21, 10, 22, 23, 13, 14, 15, 16, 17, 18, 30, 32, -1, 22, 23, 3, 25, 26, -1, -1, 8, 30, 10, -1, -1, 13, 14, 15, 16, 17, 18, -1, -1, -1, 22, 23, 3, 25, 26, -1, 7, -1, 30, 10, -1, -1, 13, 14, 15, 16, 17, 18, -1, -1, -1, 22, 23, 3, 25, 26, -1, -1, -1, 30, 10, -1, 12, 13, 14, 15, 16, 17, 18, -1, -1, -1, 22, 23, 3, 25, 26, -1, 7, -1, 30, 10, -1, -1, 13, 14, 15, 16, 17, 18, -1, -1, 3, 22, 23, -1, 25, 26, -1, 10, -1, 30, 13, 14, 15, 16, 17, 18, -1, -1, 3, 22, 23, -1, 25, 26, -1, 10, -1, 30, 13, 14, 15, 16, 17, 18, -1, -1, -1, 22, 23, -1, 25, -1, -1, 10, -1, 30, 13, 14, 15, 16, 17, 18, -1, -1, -1, 22, 23, -1, 25, -1, -1, -1, -1, 30 }
const unsigned char yystos[] [static] |
Initial value:
{ 0, 37, 38, 0, 21, 32, 39, 4, 27, 41, 40, 5, 11, 19, 20, 21, 22, 24, 28, 29, 33, 34, 42, 43, 45, 46, 47, 38, 28, 29, 43, 43, 43, 28, 48, 9, 3, 10, 13, 14, 15, 16, 17, 18, 22, 23, 25, 26, 30, 6, 43, 43, 7, 9, 31, 42, 9, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 7, 8, 43, 44, 7, 48, 7, 43, 8, 12, 43, 7 }
int SAMRAI_yychar |
int SAMRAI_yynerrs |
arith_functions af[20] [static] |