• R/O
  • SSH
  • HTTPS

mercury-regex: Commit


Commit MetaInfo

Revision48 (tree)
Time2009-02-04 16:43:26
Authorshimataro

Log Message

M: マッチング時に_match_forwardをインライン展開(リビジョン39の変更により、nfa::match_forward()は1箇所からしか呼ばれなくなったため)

ヘルプ
F: 参考資料の"Henry Spencer"の綴りが間違っていたので修正(ゴメンナサイ)
A: 今後の予定にOpen Watcom C++への対応を追加

Change Summary

Incremental Difference

--- trunk/mercury/regex.h (revision 47)
+++ trunk/mercury/regex.h (revision 48)
@@ -174,7 +174,8 @@
174174 do
175175 {
176176 // 前方一致
177- if(_match_forward(p, info.end, info.length))
177+ // NFAエンジンとして動作
178+ if(m_nfa.match_forward(p, info.end, info.length))
178179 {
179180 // 後方一致モードなのに末尾まで一致しなければやり直し
180181 if(is_tail() && !p.eos(info.end))
@@ -195,14 +196,6 @@
195196 while(info.offset++, !(p++).eos()); // "!(++p).eos()"ではダメ("a*$"が"bbbb"にマッチしない)
196197 return false;
197198 }
198-
199- // 前方一致チェック
200- template<typename _InputStreamIterator, typename _OutputIterator>
201- bool _match_forward(const _InputStreamIterator &text, _OutputIterator &match_end, size_t &match_length) const
202- {
203- // NFAエンジン
204- return m_nfa.match_forward(text, match_end, match_length);
205- }
206199 };
207200
208201 // char, wchar_tには専用の名前を付ける
--- trunk/HELP/plan.html (revision 47)
+++ trunk/HELP/plan.html (revision 48)
@@ -26,7 +26,13 @@
2626 <li>置換</li>
2727 <li>後方参照</li>
2828 <li>肯定先読み・否定先読み</li>
29- <li>いろいろなコンパイラでコンパイルできるように</li>
29+ <li>
30+ いろいろなコンパイラに対応
31+ <ul>
32+ <li><a href="http://www.digitalmars.com/" title="Digital Mars C++">Digital Mars C++</a>で独自の文字クラスを使えない問題への対応</li>
33+ <li><a href="http://www.openwatcom.org/" title="Open Watcom C++">Open Watcom C++</a>対応</li>
34+ </ul>
35+ </li>
3036 </ul>
3137
3238 <!-- 著作権表示 -->
--- trunk/HELP/index.html (revision 47)
+++ trunk/HELP/index.html (revision 48)
@@ -16,7 +16,7 @@
1616
1717 <h2>はじめに</h2>
1818 <p>
19- <strong class="software">Mercury::Regex</strong>は、誰でも、どんな目的にでも、どんな環境でも、どんな文字型でも、どんなデータ構造でも使える自由度の高い正規表現エンジンです。
19+ <strong class="software">Mercury::Regex</strong>は、誰でも、どんな目的にでも、どんな環境でも、どんな文字型でも、どんなデータ構造でも使える、移植性・自由度の高い正規表現エンジンです。
2020 面倒なインストールも追加ライブラリも必要ありません。
2121 </p>
2222 <p>
--- trunk/HELP/bibliography.html (revision 47)
+++ trunk/HELP/bibliography.html (revision 48)
@@ -34,7 +34,7 @@
3434 </dd>
3535 <dt id="HenrySpencer"><a href="http://arglist.com/regex/" title="regex - Henry Spencer's regular expression libraries">regex - Henry Spencer's regular expression libraries</a></dt>
3636 <dd>
37- Perlの正規表現の基になった、Henry Spancerの正規表現ライブラリです。
37+ <acronym title="Practical Extraction and Report Language">Perl</acronym>の正規表現の基になった、Henry Spencerの正規表現ライブラリです。
3838 C言語で記述されています。
3939 </dd>
4040 </dl>
Show on old repository browser