summaryrefslogtreecommitdiff
path: root/web/yacco2/grammar-testsuite/sp_1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'web/yacco2/grammar-testsuite/sp_1.cpp')
-rw-r--r--web/yacco2/grammar-testsuite/sp_1.cpp75
1 files changed, 75 insertions, 0 deletions
diff --git a/web/yacco2/grammar-testsuite/sp_1.cpp b/web/yacco2/grammar-testsuite/sp_1.cpp
new file mode 100644
index 0000000000..386b362981
--- /dev/null
+++ b/web/yacco2/grammar-testsuite/sp_1.cpp
@@ -0,0 +1,75 @@
+/*
+ File: sp_1.cpp
+ Date and Time: Sat Jan 31 11:58:53 2015
+*/
+#include "sp_1.h"
+using namespace NS_yacco2_T_enum;// enumerate
+using namespace NS_yacco2_err_symbols;// error symbols
+using namespace NS_yacco2_k_symbols;// lrk
+using namespace NS_yacco2_terminals;// terminals
+using namespace NS_yacco2_characters;// rc
+using namespace yacco2;// yacco2 library
+using namespace NS_sp_1;// grammar's ns
+// first set terminals
+fsm_rules_reuse_table_type::fsm_rules_reuse_table_type(){
+ no_rules_entries_ = 4;
+ per_rule_s_table_[0] = new Per_rule_s_reuse_table();
+ per_rule_s_table_[1] = new Per_rule_s_reuse_table();
+ per_rule_s_table_[2] = new Per_rule_s_reuse_table();
+ per_rule_s_table_[3] = new Per_rule_s_reuse_table();
+}
+ Csp_1::
+ Csp_1()
+ :yacco2::CAbs_fsm
+ ("sp_1.lex"
+ ,"1.0"
+ ,"7 mar 2014"
+ ,false
+ ,"Test out Spector LR(1) resolution from page 64."
+ ,"Sat Jan 31 11:58:53 2015 "
+ ,S1_Csp_1){
+
+ }
+
+Csp_1::~Csp_1(){
+
+ for(int x = 0;x < 4;++x){
+ ///delete fsm_rules_reuse_table.per_rule_s_table_[x];
+ }
+}
+
+ bool Csp_1::failed(){
+ return false;
+ }
+ void Csp_1::op(){
+}
+int Csp_1::rhs_to_rules_mapping_[8] = {
+ -1
+ ,0 // subrule 1 for rule 1
+ ,1 // subrule 2 for rule 2
+ ,1 // subrule 3 for rule 2
+ ,2 // subrule 4 for rule 3
+ ,2 // subrule 5 for rule 3
+ ,3 // subrule 6 for rule 4
+ ,3 // subrule 7 for rule 4
+};
+Rmm::Rmm(yacco2::Parser* P)
+ :CAbs_lr1_sym
+ ("Rmm",0,Csp_1::R_Rmm_,P,false,false){
+}
+
+Rs::Rs(yacco2::Parser* P)
+ :CAbs_lr1_sym
+ ("Rs",0,Csp_1::R_Rs_,P,false,false){
+}
+
+Ra::Ra(yacco2::Parser* P)
+ :CAbs_lr1_sym
+ ("Ra",0,Csp_1::R_Ra_,P,false,false){
+}
+
+Rb::Rb(yacco2::Parser* P)
+ :CAbs_lr1_sym
+ ("Rb",0,Csp_1::R_Rb_,P,false,false){
+}
+