diff options
Diffstat (limited to 'test/rlhc.d/case/stateact1_go.go-Z-F0--goto-backend.exp')
-rw-r--r-- | test/rlhc.d/case/stateact1_go.go-Z-F0--goto-backend.exp | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/test/rlhc.d/case/stateact1_go.go-Z-F0--goto-backend.exp b/test/rlhc.d/case/stateact1_go.go-Z-F0--goto-backend.exp new file mode 100644 index 00000000..b2d1951c --- /dev/null +++ b/test/rlhc.d/case/stateact1_go.go-Z-F0--goto-backend.exp @@ -0,0 +1,201 @@ +package main +import "fmt" + + + + + + + +var cs int; +var blen int; +var buffer [1024] byte; + +var _state_act_actions [] int8 = [] int8 { 0, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 2, 0, 2, 2, 1, 3, 0 } +var _state_act_trans_keys [] byte = [] byte { 1, 0, 3, 3, 0, 0, 2, 2, 2, 2, 2, 2, 0 } +var _state_act_char_class [] int8 = [] int8 { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 0 } +var _state_act_index_offsets [] int8 = [] int8 { 0, 0, 1, 2, 3, 4, 0 } +var _state_act_indicies [] int8 = [] int8 { 0, 2, 3, 3, 3, 0 } +var _state_act_index_defaults [] int8 = [] int8 { 0, 1, 1, 1, 1, 1, 0 } +var _state_act_trans_cond_spaces [] int8 = [] int8 { -1, -1, -1, -1, 0 } +var _state_act_cond_targs [] int8 = [] int8 { 2, 0, 5, 1, 0 } +var _state_act_cond_actions [] int8 = [] int8 { 0, 0, 9, 0, 0 } +var _state_act_to_state_actions [] int8 = [] int8 { 0, 0, 5, 1, 11, 1, 0 } +var _state_act_from_state_actions [] int8 = [] int8 { 0, 0, 7, 3, 14, 3, 0 } +var _state_act_nfa_targs [] int8 = [] int8 { 0, 0 } +var _state_act_nfa_offsets [] int8 = [] int8 { 0, 0, 0, 0, 0, 0, 0 } +var _state_act_nfa_push_actions [] int8 = [] int8 { 0, 0 } +var _state_act_nfa_pop_trans [] int8 = [] int8 { 0, 0 } +var state_act_start int = 4 +var state_act_first_final int = 4 +var state_act_error int = 0 +var state_act_en_main int = 4 +var state_act_en_main_line_again int = 3 +func prepare() { + + { + cs = int(state_act_start); + } +} + +func exec(data string) { + var p int = 0 + var pe int = len(data) + + { + var _trans int = 0 + var _acts int + var _nacts uint + var _keys int + var _inds int + if p == pe { + goto _test_eof; + + } + if cs == 0 { + goto _out; + + } + _resume : + _acts = int(_state_act_from_state_actions[cs] ); + _nacts = uint(_state_act_actions[_acts ]); + _acts += 1; + for _nacts > 0 { + { + switch _state_act_actions[_acts ] { + case 1 : + {fmt.Print( "a2\n" );} + + break; + case 3 : + {fmt.Print( "b2\n" );} + + break; + case 5 : + {fmt.Print( "c2\n" );} + + break; + + } + _nacts -= 1; + _acts += 1; + } + + + } + _keys = int((cs<<1) ); + _inds = int(_state_act_index_offsets[cs] ); + switch { + case ( data[p ]) <= 105 && ( data[p ]) >= 10 : + { + var _ic int = int(_state_act_char_class[int(( data[p ]) )- 10]) + switch { + case _ic <= int(_state_act_trans_keys[_keys+1 ])&& _ic >= int(_state_act_trans_keys[_keys ]): + _trans = int(_state_act_indicies[_inds + int(( _ic - int(_state_act_trans_keys[_keys ])) )]); + + default: + _trans = int(_state_act_index_defaults[cs]); + + } + } + + default: + { + _trans = int(_state_act_index_defaults[cs]); + } + + + } + goto _match_cond; + + _match_cond : + cs = int(_state_act_cond_targs[_trans]); + if _state_act_cond_actions[_trans] == 0 { + goto _again; + + + } + _acts = int(_state_act_cond_actions[_trans] ); + _nacts = uint(_state_act_actions[_acts ]); + _acts += 1; + for _nacts > 0 { + { + switch _state_act_actions[_acts ] { + case 6 : + {{cs = 3; + }} + + break; + + } + _nacts -= 1; + _acts += 1; + } + + + + } + + _again : + _acts = int(_state_act_to_state_actions[cs] ); + _nacts = uint(_state_act_actions[_acts ]); + _acts += 1; + for _nacts > 0 { + { + switch _state_act_actions[_acts ] { + case 0 : + {fmt.Print( "a1\n" );} + + break; + case 2 : + {fmt.Print( "b1\n" );} + + break; + case 4 : + {fmt.Print( "c1\n" );} + + break; + + } + _nacts -= 1; + _acts += 1; + } + + + } + if cs == 0 { + goto _out; + + } + p += 1; + if p != pe { + goto _resume; + + } + + _test_eof : + {} + + _out : + {} + + } +} +func finish() { + if cs >= state_act_first_final { + fmt.Println("ACCEPT") + } else { + fmt.Println("FAIL") + } +} +var inp []string = []string { + "hi\nhi\n", +}; + +func main() { + for _, data := range inp { + prepare() + exec(data) + finish() + } +} |