summaryrefslogtreecommitdiff
path: root/web/yacco2/qa/lr1_sp2.h
blob: 5ec8575f34c10199c2ac9327057f00ba6559161e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
/*
 File: lr1_sp2.h
 Date and Time: Mon Oct 13 18:18:12 2014 
*/
#ifndef __lr1_sp2_h__
#define __lr1_sp2_h__ 1
#include "yacco2.h"
#include "yacco2_T_enumeration.h"
#include "yacco2_k_symbols.h"
#include "yacco2_err_symbols.h"
#include "yacco2_terminals.h"
#include "yacco2_characters.h"
// monolithic grammar: no thread
extern yacco2::State S1_Clr1_sp2_fsm;
namespace NS_lr1_sp2 {
using namespace NS_yacco2_T_enum;// enumerate
using namespace yacco2;
struct fsm_rules_reuse_table_type{
 fsm_rules_reuse_table_type();
 int no_rules_entries_;
 Per_rule_s_reuse_table* per_rule_s_table_[10];
};
class Clr1_sp2_fsm: public yacco2::CAbs_fsm {
 public:
  enum rules_and_subrules{
   start_of_rule_list = NS_yacco2_T_enum::T_Enum::sum_total_T
   ,R_Rlr1_sp2_ = 569//start_of_rule_list + 0
    ,rhs1_Rlr1_sp2_ = 1
   ,R_RS_ = 570//start_of_rule_list + 2
    ,rhs1_RS_ = 2
    ,rhs2_RS_ = 3
    ,rhs3_RS_ = 4
    ,rhs4_RS_ = 5
    ,rhs5_RS_ = 6
    ,rhs6_RS_ = 7
    ,rhs7_RS_ = 8
    ,rhs8_RS_ = 9
    ,rhs9_RS_ = 10
    ,rhs10_RS_ = 11
    ,rhs11_RS_ = 12
    ,rhs12_RS_ = 13
    ,rhs13_RS_ = 14
    ,rhs14_RS_ = 15
    ,rhs15_RS_ = 16
    ,rhs16_RS_ = 17
   ,R_RE_ = 571//start_of_rule_list + 4
    ,rhs1_RE_ = 18
    ,rhs2_RE_ = 19
   ,R_RF_ = 572//start_of_rule_list + 6
    ,rhs1_RF_ = 20
    ,rhs2_RF_ = 21
   ,R_RG_ = 573//start_of_rule_list + 8
    ,rhs1_RG_ = 22
    ,rhs2_RG_ = 23
   ,R_RH_ = 574//start_of_rule_list + 10
    ,rhs1_RH_ = 24
    ,rhs2_RH_ = 25
   ,R_RA_ = 575//start_of_rule_list + 12
    ,rhs1_RA_ = 26
   ,R_RB_ = 576//start_of_rule_list + 14
    ,rhs1_RB_ = 27
   ,R_RC_ = 577//start_of_rule_list + 16
    ,rhs1_RC_ = 28
   ,R_RD_ = 578//start_of_rule_list + 18
    ,rhs1_RD_ = 29
  };
  //no of la sets = 6
  //no of states = 83
  Clr1_sp2_fsm();
  ~Clr1_sp2_fsm();
  void op();
  bool failed();
  void reduce_rhs_of_rule
      (yacco2::UINT Sub_rule_no,yacco2::Rule_s_reuse_entry** Recycled_rule);
  fsm_rules_reuse_table_type fsm_rules_reuse_table;
  static int rhs_to_rules_mapping_[30];
 };
struct Rlr1_sp2;
struct RS;
struct RE;
struct RF;
struct RG;
struct RH;
struct RA;
struct RB;
struct RC;
struct RD;
struct Rlr1_sp2:public yacco2::CAbs_lr1_sym {
  Rlr1_sp2(yacco2::Parser* P);
  public:
};

struct RS:public yacco2::CAbs_lr1_sym {
  RS(yacco2::Parser* P);
  public:
};

struct RE:public yacco2::CAbs_lr1_sym {
  RE(yacco2::Parser* P);
  public:
};

struct RF:public yacco2::CAbs_lr1_sym {
  RF(yacco2::Parser* P);
  public:
};

struct RG:public yacco2::CAbs_lr1_sym {
  RG(yacco2::Parser* P);
  public:
};

struct RH:public yacco2::CAbs_lr1_sym {
  RH(yacco2::Parser* P);
  public:
};

struct RA:public yacco2::CAbs_lr1_sym {
  RA(yacco2::Parser* P);
  public:
};

struct RB:public yacco2::CAbs_lr1_sym {
  RB(yacco2::Parser* P);
  public:
};

struct RC:public yacco2::CAbs_lr1_sym {
  RC(yacco2::Parser* P);
  public:
};

struct RD:public yacco2::CAbs_lr1_sym {
  RD(yacco2::Parser* P);
  public:
};

} // end of namespace

#endif