diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/yacco2/qa/TS_lab.h |
Initial commit
Diffstat (limited to 'web/yacco2/qa/TS_lab.h')
-rw-r--r-- | web/yacco2/qa/TS_lab.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/web/yacco2/qa/TS_lab.h b/web/yacco2/qa/TS_lab.h new file mode 100644 index 0000000000..3f4baf1f91 --- /dev/null +++ b/web/yacco2/qa/TS_lab.h @@ -0,0 +1,64 @@ +/* + File: TS_lab.h + Date and Time: Sat Oct 11 20:57:21 2014 +*/ +#ifndef __TS_lab_h__ +#define __TS_lab_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" +extern yacco2::Thread_entry ITH_TS_lab; + +extern yacco2::State S1_CTS_lab; +namespace NS_TS_lab { +yacco2::THR _YACCO2_CALL_TYPE +TH_TS_lab(yacco2::Parser* Caller);// called thread +yacco2::THR_result _YACCO2_CALL_TYPE +PROC_TH_TS_lab(yacco2::Parser* Caller);// called thread's twin the procedure +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_[2]; +}; +class CTS_lab: public yacco2::CAbs_fsm { + public: + enum rules_and_subrules{ + start_of_rule_list = NS_yacco2_T_enum::T_Enum::sum_total_T + ,R_Reol_ = 569//start_of_rule_list + 0 + ,rhs1_Reol_ = 1 + ,R_Rdelimiters_ = 570//start_of_rule_list + 2 + ,rhs1_Rdelimiters_ = 2 + ,rhs2_Rdelimiters_ = 3 + ,rhs3_Rdelimiters_ = 4 + }; + //no of la sets = 1 + //no of states = 6 + CTS_lab(); + ~CTS_lab(); + 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_[5]; + }; +struct Reol; +struct Rdelimiters; +struct Reol:public yacco2::CAbs_lr1_sym { + Reol(yacco2::Parser* P); + public: +}; + +struct Rdelimiters:public yacco2::CAbs_lr1_sym { + Rdelimiters(yacco2::Parser* P); + public: +}; + +} // end of namespace + +#endif |