Mercurial > hg > Applications > Grep
annotate regexParser/transition.h @ 187:ef798db705e9 pairPro
remove some warnings and errors(not working)
author | Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 24 Dec 2015 22:38:50 +0900 |
parents | 1da1b2eacb84 |
children | 3e8e5780ad4a |
rev | line source |
---|---|
116
66c633575b53
remove error and warning
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
112
diff
changeset
|
1 #include "bitVector.h" |
187
ef798db705e9
remove some warnings and errors(not working)
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
184
diff
changeset
|
2 node::StatePtr createState(BitVector bi); |
ef798db705e9
remove some warnings and errors(not working)
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
184
diff
changeset
|
3 node::StatePtr appendState(node::StatePtr x,node::StatePtr y); |
110 | 4 /* |
5 正規表現木を辿って transition のList をつくる | |
112
ec485345daf9
some function use static
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
110
diff
changeset
|
6 CharClass のかさなりを判定して重なりのない新しいCharClassをつくる |
110 | 7 重なっている状態はbitvectorのorをとる |
8 重なっている状態はそれぞれの状態について木をたどる | |
112
ec485345daf9
some function use static
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
110
diff
changeset
|
9 |
110 | 10 nextState == 0 は正規表現の末端を表す |
11 nextState == 1 は受理状態を表す | |
12 正規表現のノードの番号 n に対応する 2^n のbitをセットした状態 | |
112
ec485345daf9
some function use static
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
110
diff
changeset
|
13 |
110 | 14 | の場合は両方のListを結合する |
15 + の場合は左のノードに * がある場合は右のリストも結合する | |
112
ec485345daf9
some function use static
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
110
diff
changeset
|
16 左のノードに*がない場合は、右のほうだけみる |
110 | 17 * は直下のリストを使って、次の状態を自分自身にする |
18 */ |