Mercurial > hg > Applications > Grep
diff regexParser/CeriumGrep.cc @ 312:c9ac6f06e706
add loop
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 09 Feb 2016 10:59:22 +0900 |
parents | bdfe0a32c48f |
children | a4484c02cba5 |
line wrap: on
line diff
--- a/regexParser/CeriumGrep.cc Mon Feb 08 22:12:14 2016 +0900 +++ b/regexParser/CeriumGrep.cc Tue Feb 09 10:59:22 2016 +0900 @@ -8,12 +8,13 @@ #include "grepWalk.h" #include "fileread.h" #include "threadedSearch.h" +#include "generateSequentialSearch.h" Search grep(int argc,char **argv,bool parallel) { bool generate = true; bool subset = false; - bool generateSequentialSearch = false; + void (*generateSequentialSearch)(TransitionGeneratorPtr) = NULL; bool ts = false; char *filename = NULL; Search s; @@ -30,7 +31,11 @@ } else if (strcmp(argv[i],"-subset") == 0) { subset = true; } else if (strcmp(argv[i],"-seq") == 0) { - generateSequentialSearch = true; + generateSequentialSearch = exportState; + } else if (strcmp(argv[i],"-loop") == 0) { + generateSequentialSearch = exportStateLoop; + } else if (strcmp(argv[i],"-cbc") == 0) { + generateSequentialSearch = exportStateCbC; } else if (strcmp(argv[i],"-file") == 0) { s.filename = filename = argv[i+1]; i++; } else if (strcmp(argv[i],"-ts") == 0) { @@ -56,7 +61,7 @@ subsetConstruction(tgv.tg); // Determinization printState(tgv.tg); if (generateSequentialSearch) { - exportState(tgv.tg); + generateSequentialSearch(tgv.tg); } }