EaseaParse.h 2.78 KB
Newer Older
1 2 3 4 5
#ifndef _EASEAPARSE_H
#define _EASEAPARSE_H

#include <cyacc.h>

6
#line 70 "EaseaParse.y"
7 8 9 10 11 12 13

// forward references
class CSymbol;

#line 12 "EaseaParse.h"
#ifndef YYSTYPE
union tagYYSTYPE {
14
#line 76 "EaseaParse.y"
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44

  CSymbol* pSymbol;
  double dValue;
  int ObjectQualifier;
  int nValue;
  char *szString;

#line 23 "EaseaParse.h"
};

#define YYSTYPE union tagYYSTYPE
#endif

#define UMINUS 257
#define CLASSES 258
#define GENOME 259
#define USER_CTOR 260
#define USER_XOVER 261
#define USER_MUTATOR 262
#define USER_EVALUATOR 263
#define USER_OPTIMISER 264
#define MAKEFILE_OPTION 265
#define END_OF_FUNCTION 266
#define END_METHODS 267
#define IDENTIFIER 268
#define IDENTIFIER2 269
#define BOOL 270
#define INT 271
#define DOUBLE 272
#define FLOAT 273
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
#define GPNODE 274
#define CHAR 275
#define POINTER 276
#define NUMBER 277
#define NUMBER2 278
#define METHODS 279
#define STATIC 280
#define NB_GEN 281
#define NB_OPT_IT 282
#define BALDWINISM 283
#define MUT_PROB 284
#define XOVER_PROB 285
#define POP_SIZE 286
#define SELECTOR 287
#define RED_PAR 288
#define RED_OFF 289
#define RED_FINAL 290
#define OFFSPRING 291
#define SURVPAR 292
#define SURVOFF 293
#define MINIMAXI 294
#define ELITISM 295
#define ELITE 296
kruger's avatar
kruger committed
68
#define REMOTE_ISLAND_MODEL 297
kruger's avatar
kruger committed
69
#define IP_FILE 298
70
#define MIGRATION_PROBABILITY 299
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
#define SERVER_PORT 300
#define PRINT_STATS 301
#define PLOT_STATS 302
#define GENERATE_CSV_FILE 303
#define GENERATE_GNUPLOT_SCRIPT 304
#define GENERATE_R_SCRIPT 305
#define SAVE_POPULATION 306
#define START_FROM_FILE 307
#define TIME_LIMIT 308
#define MAX_INIT_TREE_D 309
#define MIN_INIT_TREE_D 310
#define MAX_XOVER_DEPTH 311
#define MAX_MUTAT_DEPTH 312
#define MAX_TREE_D 313
#define NB_GPU 314
#define PRG_BUF_SIZE 315
#define NO_FITNESS_CASES 316
#line 161 "EaseaParse.y"
89 90 91 92

#include "EaseaSym.h"
#include "EaseaLex.h"

93
#line 94 "EaseaParse.h"
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
/////////////////////////////////////////////////////////////////////////////
// CEASEAParser

#ifndef YYDECLSPEC
#define YYDECLSPEC
#endif

class YYFAR YYDECLSPEC CEASEAParser : public yyfparser {
public:
	CEASEAParser();

protected:
	void yytables();
	virtual void yyaction(int action);
#ifdef YYDEBUG
	void YYFAR* yyattribute1(int index) const;
	void yyinitdebug(void YYFAR** p, int count) const;
#endif

public:
114
#line 168 "EaseaParse.y"
115 116 117 118 119 120 121 122 123 124 125 126 127

protected:
  CEASEALexer EASEALexer;       // the lexical analyser
  
public:
  CSymbolTable SymbolTable;    // the symbol table

  int create();
  
  double assign(CSymbol* pIdentifier, double dValue);
  double divide(double dDividend, double dDivisor);
  CSymbol* insert() const;

128 129
  virtual void yysyntaxerror();

130
#line 131 "EaseaParse.h"
131 132 133 134 135 136 137
};

#ifndef YYPARSENAME
#define YYPARSENAME CEASEAParser
#endif

#endif