summaryrefslogtreecommitdiff
path: root/test/ragel.d/forder3.rl
diff options
context:
space:
mode:
Diffstat (limited to 'test/ragel.d/forder3.rl')
-rw-r--r--test/ragel.d/forder3.rl106
1 files changed, 0 insertions, 106 deletions
diff --git a/test/ragel.d/forder3.rl b/test/ragel.d/forder3.rl
deleted file mode 100644
index 65eee519..00000000
--- a/test/ragel.d/forder3.rl
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * @LANG: c
- */
-
-#include <stdio.h>
-#include <string.h>
-
-struct forder
-{
- int cs;
-};
-
-%%{
- machine forder;
- variable cs fsm->cs;
-
- m1 = ( "" %{printf("enter m1 aa\n");} |
- 'aa'* >{printf("enter m1 aa\n");} %{printf("leave m1 aa\n");} )
- 'b' @{printf("through m1 b\n");} . 'b'* . 'a'*;
-
- m2 = 'bbb'* 'aa'*;
-
- main := (
- m1 %{printf("accept m1\n");} |
- "" %{printf("enter m2\n");} |
- m2 >{printf("enter m2\n");} %{printf("accept m2\n");}
- ) . '\n';
-}%%
-
-%% write data;
-
-void forder_init( struct forder *fsm )
-{
- %% write init;
-}
-
-void forder_execute( struct forder *fsm, const char *_data, int _len )
-{
- const char *p = _data;
- const char *pe = _data+_len;
-
- %% write exec;
-}
-
-int forder_finish( struct forder *fsm )
-{
- if ( fsm->cs == forder_error )
- return -1;
- if ( fsm->cs >= forder_first_final )
- return 1;
- return 0;
-}
-
-struct forder fsm;
-
-void test( char *buf )
-{
- int len = strlen( buf );
- forder_init( &fsm );
- forder_execute( &fsm, buf, len );
- if ( forder_finish( &fsm ) > 0 )
- printf("ACCEPT\n");
- else
- printf("FAIL\n");
-}
-
-int main()
-{
- test( "aaaaaabbbaa\n" );
- test( "\n" );
- test( "bbbbbbaaaaaaa\n" );
- test( "bbbbbbaaaaaa\n" );
- test( "aaaaa\n" );
-
- return 0;
-}
-
-##### OUTPUT #####
-enter m1 aa
-enter m2
-leave m1 aa
-through m1 b
-accept m1
-ACCEPT
-enter m2
-enter m2
-accept m2
-ACCEPT
-enter m1 aa
-enter m1 aa
-leave m1 aa
-through m1 b
-enter m2
-accept m1
-ACCEPT
-enter m1 aa
-enter m1 aa
-leave m1 aa
-through m1 b
-enter m2
-accept m1
-accept m2
-ACCEPT
-enter m1 aa
-enter m2
-FAIL