summaryrefslogtreecommitdiff
path: root/test/rlhc.d/case/scan1_cs.cs-A-G1--goto-backend.in
diff options
context:
space:
mode:
Diffstat (limited to 'test/rlhc.d/case/scan1_cs.cs-A-G1--goto-backend.in')
-rw-r--r--test/rlhc.d/case/scan1_cs.cs-A-G1--goto-backend.in347
1 files changed, 347 insertions, 0 deletions
diff --git a/test/rlhc.d/case/scan1_cs.cs-A-G1--goto-backend.in b/test/rlhc.d/case/scan1_cs.cs-A-G1--goto-backend.in
new file mode 100644
index 00000000..19b9455a
--- /dev/null
+++ b/test/rlhc.d/case/scan1_cs.cs-A-G1--goto-backend.in
@@ -0,0 +1,347 @@
+host( "working/scan1_cs.rl", 1 ) @{/*
+ * @@LANG: csharp
+ * @@GENERATED: true
+ */
+
+ using System;
+ // Disables lots of warnings that appear in the test suite
+ #pragma warning disable 0168, 0169, 0219, 0162, 0414
+ namespace Test {
+ class Test
+ {
+ int ts;
+ int te;
+ int act;
+ int token;
+
+
+
+
+ }@
+ array s8 _scanner_to_state_actions( 0, 8 ) = { 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0 };
+
+ array s8 _scanner_from_state_actions( 0, 9 ) = { 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0 };
+
+ array s8 _scanner_nfa_targs( 0, 0 ) = { 0, 0 };
+
+ array s8 _scanner_nfa_offsets( 0, 0 ) = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
+
+ array s8 _scanner_nfa_push_actions( 0, 0 ) = { 0, 0 };
+
+ array s8 _scanner_nfa_pop_trans( 0, 0 ) = { 0, 0 };
+
+ value int scanner_start = 7;
+ value int scanner_first_final = 7;
+ value int scanner_error = 0;
+
+ value int scanner_en_main = 7;
+
+ host( "working/scan1_cs.rl", 60 ) @{
+ int cs;
+
+ void init()
+ {
+ }@
+ {
+ cs = cast(int)scanner_start;
+ ts = nil;
+ te = nil;
+ act = 0;
+ }
+ host( "working/scan1_cs.rl", 65 ) @{
+ }
+
+ void exec( char[] data, int len )
+ {
+ int p = 0;
+ int pe = len;
+ int eof = len;
+ string _s;
+ char [] buffer = new char [1024];
+ int blen = 0;
+ }@
+ {
+ if ( p == pe )
+ goto _test_eof;
+ if ( cs == 0 )
+ goto _out;
+ _resume:
+ switch ( _scanner_from_state_actions[cs] ) {
+ case 9{
+ host( "NONE", 1 ) ${${ts = p;}$}$
+ }
+ }
+
+ switch ( cs ) {
+ case 7:
+ switch( ( deref( data, p )) ) {
+ case c(10): {
+ goto ctr15;
+ }
+ case c(97): {
+ goto ctr16;
+ }
+ case c(98): {
+ goto ctr17;
+ }
+ case c(99): {
+ goto ctr18;
+ }
+ case c(100): {
+ goto ctr19;
+ }
+ }
+ if ( c(48) <= ( deref( data, p )) && ( deref( data, p )) <= c(57) ) {
+ goto ctr3;
+ }
+ {
+ goto ctr5;
+ }
+ case 0:
+ goto _out;
+ case 1:
+ switch( ( deref( data, p )) ) {
+ case c(46): {
+ goto ctr2;
+ }
+ case c(100): {
+ goto ctr3;
+ }
+ }
+ if ( c(48) <= ( deref( data, p )) && ( deref( data, p )) <= c(57) ) {
+ goto ctr3;
+ }
+ {
+ goto ctr25;
+ }
+ case 8:
+ if ( ( deref( data, p )) == c(98) ) {
+ goto ctr17;
+ }
+ {
+ goto ctr21;
+ }
+ case 2:
+ if ( ( deref( data, p )) == c(49) ) {
+ goto ctr4;
+ }
+ {
+ goto ctr5;
+ }
+ case 9:
+ if ( ( deref( data, p )) == c(100) ) {
+ goto ctr24;
+ }
+ {
+ goto ctr23;
+ }
+ case 3:
+ if ( ( deref( data, p )) == c(120) ) {
+ goto ctr8;
+ }
+ {
+ goto ctr11;
+ }
+ case 4:
+ if ( ( deref( data, p )) == c(120) ) {
+ goto ctr10;
+ }
+ {
+ goto ctr11;
+ }
+ case 5:
+ if ( ( deref( data, p )) == c(120) ) {
+ goto ctr12;
+ }
+ {
+ goto ctr11;
+ }
+ case 6:
+ switch( ( deref( data, p )) ) {
+ case c(46): {
+ goto ctr2;
+ }
+ case c(49): {
+ goto ctr13;
+ }
+ case c(50): {
+ goto ctr14;
+ }
+ case c(100): {
+ goto ctr3;
+ }
+ }
+ if ( c(48) <= ( deref( data, p )) && ( deref( data, p )) <= c(57) ) {
+ goto ctr3;
+ }
+ {
+ goto ctr5;
+ }
+ case 10:
+ switch( ( deref( data, p )) ) {
+ case c(46): {
+ goto ctr2;
+ }
+ case c(100): {
+ goto ctr3;
+ }
+ }
+ if ( c(48) <= ( deref( data, p )) && ( deref( data, p )) <= c(57) ) {
+ goto ctr3;
+ }
+ {
+ goto ctr25;
+ }
+ }
+
+ ctr5: cs = 0; goto _again;
+ ctr3: cs = 1; goto _again;
+ ctr18: cs = 2; goto _again;
+ ctr24: cs = 3; goto _again;
+ ctr8: cs = 4; goto _again;
+ ctr10: cs = 5; goto _again;
+ ctr19: cs = 6; goto _again;
+ ctr25: cs = 7; goto f0;
+ ctr2: cs = 7; goto f1;
+ ctr11: cs = 7; goto f3;
+ ctr12: cs = 7; goto f4;
+ ctr15: cs = 7; goto f9;
+ ctr16: cs = 7; goto f10;
+ ctr21: cs = 7; goto f11;
+ ctr23: cs = 7; goto f12;
+ ctr17: cs = 8; goto _again;
+ ctr4: cs = 9; goto f2;
+ ctr13: cs = 10; goto f5;
+ ctr14: cs = 10; goto f6;
+
+ f2:
+ host( "NONE", 1 ) ${${te = p+1;}$}$
+ goto _again;
+ f10:
+ host( "working/scan1_cs.rl", 23 ) ${${te = p+1;host( "working/scan1_cs.rl", 23 ) ${Console.Write( "on last " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$}$}$
+ goto _again;
+ f4:
+ host( "working/scan1_cs.rl", 35 ) ${${te = p+1;host( "working/scan1_cs.rl", 35 ) ${Console.Write( "on lag " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$}$}$
+ goto _again;
+ f1:
+ host( "working/scan1_cs.rl", 52 ) ${${te = p+1;}$}$
+ goto _again;
+ f9:
+ host( "working/scan1_cs.rl", 54 ) ${${te = p+1;}$}$
+ goto _again;
+ f11:
+ host( "working/scan1_cs.rl", 29 ) ${${te = p;p = p - 1;host( "working/scan1_cs.rl", 29 ) ${Console.Write( "on next " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$}$}$
+ goto _again;
+ f12:
+ host( "working/scan1_cs.rl", 35 ) ${${te = p;p = p - 1;host( "working/scan1_cs.rl", 35 ) ${Console.Write( "on lag " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$}$}$
+ goto _again;
+ f3:
+ host( "working/scan1_cs.rl", 35 ) ${${p = ((te))-1;
+ host( "working/scan1_cs.rl", 35 ) ${Console.Write( "on lag " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$}$}$
+ goto _again;
+ f0:
+ host( "NONE", 1 ) ${${switch( act ) {
+ case 0 {
+ host( "NONE", 1 ) ${${cs = 0; goto _again;}$}$ }
+ case 4 {
+ p = ((te))-1;
+ host( "working/scan1_cs.rl", 41 ) ${Console.Write( "lm switch1 " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$ }
+ case 5 {
+ p = ((te))-1;
+ host( "working/scan1_cs.rl", 46 ) ${Console.Write( "lm switch2 " );if ( p + 1 == te )
+ {
+ Console.Write( "yes" );
+ }
+ Console.Write( "\n" );}$ }
+ }}$
+ }$
+ goto _again;
+ f5:
+ host( "NONE", 1 ) ${${te = p+1;}$}$ host( "working/scan1_cs.rl", 41 ) ${${act = 4;}$}$
+ goto _again;
+ f6:
+ host( "NONE", 1 ) ${${te = p+1;}$}$ host( "working/scan1_cs.rl", 46 ) ${${act = 5;}$}$
+ goto _again;
+
+ _again:
+ switch ( _scanner_to_state_actions[cs] ) {
+ case 8{
+ host( "NONE", 1 ) ${${ts = nil;}$}$ host( "NONE", 1 ) ${${act = 0;}$}$
+ }
+ }
+
+ if ( cs == 0 )
+ goto _out;
+ p+= 1;
+ if ( p != pe )
+ goto _resume;
+ _test_eof: {}
+ if ( p == eof )
+ {
+ switch ( cs ) {
+ case 1: goto ctr25;
+ case 8: goto ctr21;
+ case 9: goto ctr23;
+ case 3: goto ctr11;
+ case 4: goto ctr11;
+ case 5: goto ctr11;
+ case 10: goto ctr25;
+ }
+ }
+
+ _out: {}
+ }
+ host( "working/scan1_cs.rl", 76 ) @{
+ }
+
+ void finish( )
+ {
+ if ( cs >= scanner_first_final )
+ Console.WriteLine( "ACCEPT" );
+ else
+ Console.WriteLine( "FAIL" );
+ }
+
+ static readonly string[] inp = {
+ "abbc1d1d2\n",
+ };
+
+
+ static readonly int inplen = 1;
+
+ public static void Main (string[] args)
+ {
+ Test machine = new Test();
+ for ( int i = 0; i < inplen; i++ ) {
+ machine.init();
+ machine.exec( inp[i].ToCharArray(), inp[i].Length );
+ machine.finish();
+ }
+ }
+ }
+ }
+}@ \ No newline at end of file