comparison regexParser/TODO @ 291:1b75546ff65f

fix TODO
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 01 Feb 2016 12:20:16 +0900
parents 20ed7536784f
children 948428caf616
comparison
equal deleted inserted replaced
290:7f320313f44e 291:1b75546ff65f
5 5
6 ./regexParser -ts -subset -regex '(a|b)*a' -file ahoaho.txt 6 ./regexParser -ts -subset -regex '(a|b)*a' -file ahoaho.txt
7 7
8 で、bの後にaが来なくなると、bの手前までをacceptする 8 で、bの後にaが来なくなると、bの手前までをacceptする
9 9
10 subset construction はいじらない方針で。
11
12
13 state : 1
14 node : + 1 -> 1
15 [a-a] (3)
16 [b-b] (1)
17
18 state : 2*
19 node : e 2 -> 1
20
21 state : 3*
22 [a-a] (3)
23 [b-b] (1)
24
25 * はaccept state。
26
27 [a-a] (3) で stateMatch で良いが、maxmum だと match している間は stateMatch はしない。
28 現状は、*の付いているstateで、条件にmatchしない時に stateMatch してる。
29 これだと state 3 で b で satete 1 に行ってしまい、b 以降に a がない時に失敗する。b に行く前の state 3 で stateMatchするべき。
30
31 matchする可能性がなくなったところで、前の部分でmatchさせる必要がある。
32 * match してなければ、match top をupdate
33 * match している間は直前matchをupdate
34 * match fail したところで、直前のmatch があれば、それを返す
35 という感じか?
36
37 minimum match は
38 * match してなければ、match top をupdate
39 * match したところで、直前のmatch があれば、それを返す
40 か?
41
42 ソース生成を CbC に対応させる。(でないと動かないらしい)
10 43
11 44
12 Sun Jan 31 20:37:49 JST 2016 masa 45 Sun Jan 31 20:37:49 JST 2016 masa
13 並列処理時のバグ Ok 46 並列処理時のバグ Ok
14 (mili|have) のsubset construction のミス Ok 47 (mili|have) のsubset construction のミス Ok
16 49
17 '(main|int) ' .. Ok 50 '(main|int) ' .. Ok
18 '(main|int)\(' .. Ok 51 '(main|int)\(' .. Ok
19 52
20 とかが動かない。 53 とかが動かない。
54
55 start state に accept flag が立っていると''にmatchしてしまう。それは別に生成する。
21 56
22 Sat Jan 2 15:29:16 JST 2016 kono 57 Sat Jan 2 15:29:16 JST 2016 kono
23 58
24 stateよりもstate transitionの方が大きいので、subset contructionで CharClassWalkするのは良くない。 59 stateよりもstate transitionの方が大きいので、subset contructionで CharClassWalkするのは良くない。
25 mergeTransition した時に、state listに新しいものを接続してやれば、CharClassWalkの必要はない。 60 mergeTransition した時に、state listに新しいものを接続してやれば、CharClassWalkの必要はない。