annotate dep/anitomy/dep/srell/history_ja.txt @ 399:a0bc3ae5164a

anime_list: actually obey "highlight anime if they are available"
author Paper <paper@tflc.us>
date Fri, 07 Nov 2025 15:28:22 -0500
parents a0aa8c8c4307
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
347
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
1 20240613; version 4.046:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
2 ・コードの減量。リテラルが連続する箇所を最優先に探す仕組みを削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
3 ・その他細々とした改良や修正など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
4
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
5 20240608; version 4.045:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
6 ・Modifiersを実装。ただし提案がECMAScript仕様書に織り込まれるまでは、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
7 #define SRELL_ENABLE_MODIFIERS定義時のみ利用可能。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
8 ・4.043でduplicate named capturing groups対応のための変更を加えた際、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
9 後方参照の番号が括弧の最大番号を超えていないかのチェックが抜けてしま
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
10 っていたので追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
11
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
12 20240602; version 4.044:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
13 ・SRELL_NO_NAMEDCAPTURE用の#if~#endifが抜けていたので追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
14 ・古いほうのstate挿入函数を引退させ、新しいほうに一本化。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
15
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
16 20240526; version 4.043:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
17 ・Duplicate named capturing groups(|で区切られた位置なら既出のグルー
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
18 プ名を重複して使える機能)を実装。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
19
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
20 20240524; version 4.042:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
21 ・*, +用の最適化処理が、C{n,}(Cは文字かクラス、nは2以上)にも適用され
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
22 うるように拡張。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
23 ・次の条件を満たす場合に用いられる統合スタックを導入。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
24 1) アルゴリズム函数に渡されたiteratorがポインタであること、または、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
25 2) コンパイラがstd::is_trivially_copyableに対応していて、かつ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
26 渡されたiteratorの型Iに対する
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
27 std::is_trivially_copyable<I>::valueがtrueであること。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
28 どちらの条件も満たさない時は従来の個別スタックが使われます。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
29
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
30 20240519; version 4.041:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
31 ・4.040で行った仮修正の仕上げ。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
32 ・使用していない函数の削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
33 ・64GBを超えるメモリ割り当てが可能な環境において理論上起こり得る問題に
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
34 対処。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
35
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
36 20240131; version 4.040:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
37 ・もう1行復元。?? (non-greedy {0,1})が最適化バグを引き起こすことがあっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
38 たため。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
39
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
40 20240127; version 4.039:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
41 ・Version 4.037で誤って削除してしまったコードを復元。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
42
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
43 20240124; version 4.038:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
44 ・/(?:ab)+|cd/が"ababcd"にマッチしてしまうバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
45 発生条件:|の左右が異なる文字で始まり、かつ左方が(?:)+の中に入ってい
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
46 る。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
47 ・その他改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
48
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
49 20240122; version 4.037:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
50 ・Version 4.021以降最適化のバグにより、/(?:a|ab|abc)$/が"ac"にマッチす
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
51 るようになっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
52 発生条件:(?:A|B|C) のような表現でAがBの前部と一致し、BがCの前部と一
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
53 致している場合。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
54 →誤った最適化によりAの終端からCの後部に至るパスが発生してしまう。こ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
55 のパスは普段は隠れているものの、バックトラッキングが発生すると使わ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
56 れてしまう。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
57 ・その他、細々とした修正や改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
58
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
59 20240114; version 4.036:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
60 ・Lookaround (lookaheadとlookbehind)の改良とバグ修正:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
61 1. 不要なスタック処理を削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
62 2. "abc"に対する/(?:(?=(\w))|b)c$/の1番括弧が"b"ではなく未定義になる
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
63 ように、version 3.003で廃止したstateを復活。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
64 発生条件:1: Lookaroundが捕獲括弧を含んでいて、2: そのlookaround
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
65 が成功した後、後続のマッチに失敗し、3: '|'で区切られた別の
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
66 subpatternを試し、正規表現全体のマッチが成功する。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
67 →Lookaround内で捕獲された文字列がundefinedに戻らず残ってしまって
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
68 いた。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
69 ・misc/sample01.cppをconftest.cppに置き換え。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
70 ・各epsilonにタグ付け。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
71
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
72 20231229; version 4.035:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
73 ・文字クラスのcase foldingを改良(Icase時の\p{Any}のコンパイル速度の改
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
74 善)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
75 ・(?i:)対応の下準備。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
76 ・updataout3.cppを更新。前版で内部のnamespaceを変更した影響でコンパイ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
77 ルできなくなっていました。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
78
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
79 20231209; version 4.034:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
80 ・アルゴリズム函数に渡されたiteratorがcontiguous_iteratorかどうかを調
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
81 べる時、std::contiguous_iteratorが使えるならそれを使うように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
82 ・正規表現中に存在しないグループ名が、match_results型のoperator[]()メ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
83 ンバ函数に引数として渡された場合、error_backrefをthrowするのをやめ、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
84 「何にもマッチしていない」ことを表すsub_match型インスタンスへの参照
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
85 を返すように変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
86 この変更に併せて、match_results::operator[](size_type n)が
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
87 n >= size()の時も同様の参照を返すように変更(std::regex準拠の挙動。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
88 従来はSRELL_STRICT_IMPLが定義されていた時のみ準拠)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
89 ・例外をthrowしないモードを実装。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
90 ・例外を投げないモード用に、直前のコンパイル時にthrowされるはずであっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
91 たerror_typeを返す basic_regex::ecode() を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
92 ・例外を投げないモード用に、直前の検索時にthrowされるはずであった
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
93 error_typeを返す match_results::ecode() を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
94
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
95 20230926; version 4.033:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
96 ・Version 4.020以降、64ビット環境でアクセス違反を起こすことがあった問
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
97 題を修正(報告してくださったYuriy Skvortsov氏に感謝します)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
98 発生条件:/ab|ac|ad/のように、3つ以上のAlternativesが同じ文字から始
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
99 まる。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
100 ・utf_traits中の使用されていないメンバ函数を削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
101 ・その他コードの整理など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
102
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
103 20230916; version 4.032:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
104 ・UTF-8/UTF-16のデコーダが常にinline展開されるようdirectiveを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
105 ・オートマトンの呼び出し部を整理。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
106
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
107 20230913; version 4.031:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
108 ・ucfdata2.h, updata3.hをUnicode 15.1.0対応に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
109 ・updataout3.cppを更新。Unicode property escapeのScriptまたは
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
110 Script_Extensionsで指定できる値に"Unknown"を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
111 この値はScripts.txt内で言及されているものの、ECMAScript仕様書の「対
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
112 応すべきscript名一覧」になかったのでこれまで対応していませんでした。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
113 しかし仕様書から一覧表が削除され、除外する理由がなくなったのでV8に倣
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
114 ってSRELLも対応することにしました。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
115
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
116 20230909; version 4.030:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
117 ・^ $ \b \Bだけのrewinderが作られることのないようにパターンコンパイラ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
118 を変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
119 ・Unicode propertyの名前や値の照合を二分探索で行うように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
120 ・上記変更に併せてunicode/updataout2.cppを更新し、updataout3.cppに。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
121 また、ECMAScript仕様書が対応すべきscript名を一覧表で示すことをやめた
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
122 ため、Scripts.txtとPropertyValueAliases.txtとから読み取るように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
123 ・Unicodeデータファイルの拡張子を*.hppから*.hに変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
124 ・unicode/ucfdataout2.cppを更新。上記の拡張子変更に対応。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
125
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
126 20230903; version 4.029:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
127 ・unicode/updataout2.cppを更新。SRELL内部で使う型を4.023で統合したせい
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
128 でコンパイルが通らなくなっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
129 ・srell_updata2.hppを作り直し(Unicode 15で新規追加された2つのスクリプ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
130 トのデータが入っていなかったため。どうも古いupdataout2.cppで出力した
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
131 ものだったようです)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
132
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
133 20230831; version 4.028:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
134 ・regex型またはwregex型が使われる時、単体のchar/wchar_tで表現できない
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
135 Unicode値についてはオートマトンを呼び出さないように改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
136
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
137 20230821; version 4.027:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
138 ・"2023-8-21"に対して/(?:(\d+-)?)+(\d{1,2})-(\d{1,2})/で検索した時に、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
139 1番括弧が何もキャプチャしないバグを修正(相当前からあったバグ)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
140 ・同じ条件で全体のマッチが "23-8-21" だけになるバグを修正(4.019で混入
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
141 したバグで、4.026の修正でもカヴァーできていなかったもの)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
142
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
143 20230820; version 4.026:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
144 ・Version 4.019以降、"2023-8-20"に対して/(\d+-)?\d{1,2}-\d{1,2}/で検索
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
145 すると"23-8-20"にマッチしてしまうようになっていたバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
146
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
147 20230819; version 4.025:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
148 ・movzxを避けるため内部表現中のフラグ管理をbool型から整数型に変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
149 ・オートマトン中でよく使う構造体のメンバ変数名を短いものに置換。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
150
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
151 20230817; version 4.024:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
152 ・4.019以降出番のなくなっていた最適化処理用コードをコメントアウト。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
153 ・細々とした改良と問題の修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
154
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
155 20230804; version 4.023:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
156 ・内部で使う2種類の整数型を1種類に統合。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
157 ・4.019で導入したentry state selectorにより効果が限定的となった最適化
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
158 処理を簡略に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
159 ・Entry state selectorの改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
160 ・変数名の修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
161
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
162 20230730; version 4.022:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
163 ・ソースコードの整理と細々とした問題の修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
164
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
165 20230727; version 4.021:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
166 ・新たな内部状態を挿入すること無しに分岐の最適化が行えるよう改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
167
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
168 20230724; version 4.020:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
169 ・Properties of stringsの内部表現への変換方法を簡略化。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
170 ・その他細々とした改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
171
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
172 ・[4.000~4.019, vフラグモード] 手元のソースファイルからリリース用ファイ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
173 ルを作るための設定にミスがあり、version 4.000~4.019ではvモードが正し
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
174 く実装されていませんでした。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
175 optimise_pos()函数の最後に次の行を書き足すとこれらの版でも正常に動作し
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
176 ます。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
177 insert_btbranch(piece, ins_bt);
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
178 この函数がどこからも呼ばれていなかったのがバグの原因です。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
179
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
180 20230114; version 4.019:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
181 ・新しいentry state selectorを実装。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
182
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
183 20230109; version 4.018:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
184 ・4.016のオートマトン統合をキャンセル。パターンコンパイラ側に変更を加
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
185 え始めるとicase検索が著しく速度低下したため。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
186
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
187 20230107; version 4.017:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
188 ・Version 4.006以降、bidirectional iteratorで検索しようとするとコンパ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
189 イルエラーが発生するようになっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
190
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
191 20230106; version 4.016/3.018(*のみ):
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
192 ・4つのオートマタを2つに統合(i-modifier対応の下準備)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
193 */a{0,0}/がエラー扱いになっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
194 *その他細かい修正など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
195
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
196 20221227; version 4.015:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
197 ・VCで_ITERATOR_DEBUG_LEVELを1以上にすると、エラー扱いされる
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
198 regex_iterator2中のコードを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
199 ・その他改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
200
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
201 20221220; version 4.014:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
202 ・誤って前版で抜けていたmatch_resultsのメンバ函数を補充。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
203 ・regex_token_iteratorの簡素化。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
204
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
205 20221220; version 4.013:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
206 ・"abc"を/$/でsplit()すると、{"abc"}となるべきところが{"abc", ""}にな
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
207 ってしまっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
208 ・replace()のoverload函数の数を減らし、ラムダ使用時は常にコールバック
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
209 函数で受け取りたいmatch_resultsの型をテンプレート実引数で明示するよ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
210 うに。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
211 ・regex_iterator2を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
212
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
213 20221216; version 4.012:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
214 ・コンパイラによってreplace()のコンパイルに失敗する問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
215
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
216 20221214; version 4.011/3.017(*のみ):
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
217 *[LWG Issue 3204] sub_matchにswap()を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
218 ・replace()の仕様変更。std::basic_string風のコンテナ型なら何でも置換で
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
219 きるように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
220 ・srell::str_clipを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
221 ・split()にイテレータ、ポインタに対応するoverloadを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
222
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
223 20221212; version 4.010:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
224 ・split()の実装が説明文と合うように修正。文ではsub_matchがリストコンテ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
225 ナにpushされるとなっているのに対して、コードではbasic_stringがpushさ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
226 れていました。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
227 ・sub_matchクラスのbasic_stringへの変換函数(キャスト及びstr())に、カ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
228 スタムtraits/allocator対応版を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
229
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
230 20221210; version 4.009/3.016(*のみ):
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
231 *regex_iteratorのiterator (it) が0幅にマッチすると、次に++した時に
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
232 it->prefix().matchedがtrueにならなかった問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
233 *match_resultsのテンプレート引数にカスタムallocatorを渡すとコンパイル
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
234 できなかった問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
235 ・basic_regexに新しいメンバ函数(拡張API)を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
236
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
237 20221130; version 4.008:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
238 ・4.006で導入したfinderよりもBMHの優先度が上になるよう調整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
239 ・\b/\Bおよびmultilineモードにおける^, $の改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
240
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
241 20221124; version 4.007:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
242 ・正規表現の最初でのみ使える埋込フラグ (?ims-ims) に対応(Python 3.11
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
243 と同様)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
244 註:この機能は独自拡張で、ECMAScriptの仕様にはありません。また
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
245 regexp-modifiers提案とも異なっています。この機能はSRELL_NO_UBMODを定
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
246 義することにより、無効にできます。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
247
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
248 20221123; version 4.006:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
249 ・最初にマッチする文字が一種類である正規表現用のfinderを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
250
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
251 20221030; version 4.005/3.015(*のみ):
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
252 *int型とlong型とでビット幅が異なる環境(LP64, 4/8/8等)で未定義動作と
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
253 なるコードを修正(報告してくださったTravers Ching氏に感謝します)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
254 ・unicode/ucfdataout2.cpp, updataout2.cppを更新。Unicodeデータファイル
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
255 (srell_ucfdata2.hpp, srell_updata2.hpp) なしでもコンパイルできるよう
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
256 に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
257 ・その他コードの整理など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
258
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
259 20221022; version 4.004/3.014:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
260 ・srell_ucfdata2.hppとsrell_updata2.hppとをUnicode 15.0.0対応に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
261 ・unicode/updataout2.cppをUnicode 15対応に更新(ECMAScript 2023で対応
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
262 される見込みのスクリプト名の先行対応)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
263 ・先の後方参照バグを直した結果、無意味になったコードを削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
264
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
265 20221012; version 4.003/3.013:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
266 ・後方参照バグを再々修正。ちなみにこのバグは可変幅の戻り読みに対応した
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
267 ことに付随するものであるため、version 2.000以降のSRELL全版に存在しま
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
268 す。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
269 (可変幅の戻り読みでは/(?<=\1\s+(\d+))/のように、パーザが捕獲括弧よ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
270 りも先に後方参照に出合ってしまうことがあるため、対応する括弧がその正
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
271 規表現中に実在するのかすぐに判断できないことに由来しています)
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
272
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
273 20221012; version 4.002/3.012:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
274 ・前版の後方参照バグを違う方法で再修正。20221011の修正では/(?:\1+)*()/
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
275 のような表現に対応できていなかったため。同時に/()(?:\1+)*/のような表
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
276 現が無限ループに陥るのも修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
277
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
278 20221011; version 4.001/3.011(*のみ):
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
279 */\1*()/や/(\1+)/のように、対応する捕獲括弧の閉じ括弧よりも先に出現す
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
280 る後方参照に*または+が付いているとnullポインタを参照してしまう、もし
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
281 くは無限ループに陥るバグを修正(バグを見つけてくださったsrellcomの作
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
282 者、@datadiode氏に感謝します)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
283 ・ECMAScriptの仕様に従い、[]内で'-'をエスケープせず書ける位置のチェッ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
284 クを厳密に行うよう変更。定義済み文字クラス(\d, \s等)直後の'-'は、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
285 それが文字クラス最後の文字でない限りはエラーに([\s-\d]はエラー、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
286 [\s-]はOK)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
287 ・UTF-8用内部iteratorの調整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
288
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
289 20220618; version 4.000:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
290 ・ECMAScriptに追加される見込みのvフラグモードに対応。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
291 ・srell_updata.hppの仕様変更。srell_updata2.hppに。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
292 ・上記変更に併せてunicode/updataout.cppを更新し、updataout2.cppに。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
293 ・64ビット環境でclang-tidyが "excessive padding" と警告する問題に対応
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
294 するため構造体メンバの順番を変更(ご報告に感謝します)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
295 ・unicode/ucfdataout2.cppを更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
296
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
297 20220529; version 3.010:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
298 ・\pや\Pを含む文字クラスのメモリ使用量を削減。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
299 ・\pや\Pの{}内が不正の時にthrowされるエラーの種類を、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
300 regex_constants::error_escapeから新設の
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
301 regex_constants::error_propertyに変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
302 ・その他細々とした改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
303
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
304 20220511; version 3.009:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
305 ・最適化バグにより /abcd|ab/ が "abc" にマッチしなかった問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
306
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
307 20220504; version 3.008:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
308 ・icase指定時の[^\P{...}]の振る舞いが、TC39で提案中のv-modeのそれに近
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
309 いものになっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
310
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
311 20220429; version 3.007:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
312 ・カウンタの仕組みをさらに変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
313
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
314 20220428; version 3.006:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
315 ・繰り返し処理用のカウンタを調整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
316 ・小さな文字クラス用の線形探索を再削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
317
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
318 20220424; version 3.005:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
319 ・multiline指定時に /(?<=$.*)/ が "a" の終わりにマッチしなかった問題を
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
320 修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
321 ・TC39で提案中の\A, \z, (?m:)の準備。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
322
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
323 20220420; version 3.004:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
324 ・'*' または '+' 付きの文字クラスが後続する文字または文字クラスと排他
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
325 的になっていない表現用の最適化処理を追加。例:/[A-Za-z]+ing/,
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
326 /".*"/ など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
327
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
328 20220416; version 3.003:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
329 ・2つの最適化函数を1つに統合。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
330 ・先読み (lookahead)・戻り読み (lookbehind) 用のコード量を削減。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
331
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
332 20220416; version 3.002:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
333 ・3.000で導入した簡易entry state選択の使用時に、regex_matchや
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
334 match_continuousフラグが指定されたregex_searchが機能しない場合があっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
335 た問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
336
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
337 20211025; version 3.001:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
338 ・カウンタ分割を廃止。効果がないかむしろ若干速度が低下しているように見
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
339 えるため。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
340 ・潜在的なバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
341 ・その他細かな改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
342
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
343 20211023; version 3.000:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
344 ・srell_ucfdata2.hppとsrell_updata.hppとをUnicode 14.0.0対応に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
345 ・unicode/updataout.cppをUnicode 14対応に更新(ECMAScript 2022で対応さ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
346 れる見込みのスクリプト名の先行対応)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
347 ・char32_t未対応のコンパイラでUnicode値を保持するため内部で使用する型
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
348 を「21ビット以上あるunsigned整数型」から「32ビット以上あるunsigned整
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
349 数型」に変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
350 ・char32_t未対応のコンパイラで繰り返し回数や文字クラス番号を保持するの
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
351 に使う型を「unsigned int」から「32ビット以上あるunsigned整数型」に変
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
352 更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
353 ・数値用パーザにoverflowチェックを追加。例:unsigned int型が32ビットの
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
354 幅の時、前の版まで /a{0,4294967297}/ は /a{0,1}/ 相当になってしまっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
355 ていましたが、前記のチェックを入れたことによりこのような場合には
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
356 error_braceがthrowされるようになっています。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
357 ・非multilineモード時に /[^;]*^;?/ が入力文字列の先頭にマッチしなかっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
358 たバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
359 ・ごく簡易なentry state選択を実装。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
360
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
361 20211004; version 2.930:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
362 ・WCHAR_MAXの値に基づいてUTF-16/UTF-32対応が切り替わるu1632w-型を新規
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
363 に追加(WCHAR_MAXが0xFFFF以上・0x10FFFF未満ならu1632w-型はu16w-型の
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
364 別名となり、WCHAR_MAXが0x10FFFF以上ならu1632w-型はu32w-型の別名とな
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
365 ります)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
366 ・Eytzinger layout検索時に使われるメモリ使用量を削減。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
367 ・その他細かな改良など(いくつかはNIREに対するMarko Njezic氏の改善案に
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
368 基づきます)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
369
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
370 20210624; version 2.920:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
371 ・?({0,1}相当)用の最適化処理を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
372 ・misc/sample01.cpp内で参照しているECMAScript仕様書の版を2021に変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
373
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
374 20210429; version 2.912:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
375 ・2.900で導入した最適化処理のバグにより /aa|a|aa/ が "a" にマッチしな
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
376 くなっていた問題を修正(報告してくださったJan Schrötter氏に感謝しま
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
377 す)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
378 ちなみにこの最適化処理は、srell.hppをincludeする前に
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
379 SRELLDBG_NO_BRANCH_OPT2マクロを定義しておくと無効化できます。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
380
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
381 20210424; version 2.911:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
382 ・2.900で導入した最適化処理内の不用意な行削除が原因で、/abc|ab|ac/ が
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
383 "ac" に対してマッチしなくなっていた問題を修正(バグ報告に感謝します)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
384
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
385 20210407; version 2.910:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
386 ・2.900以降、パターンコンパイラ内部でmove代入演算子が使われる時にメモ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
387 リリークしていた問題を修正(報告してくださったMichal Švec氏に感謝し
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
388 ます)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
389
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
390 20210214; version 2.901:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
391 ・不要なテンプレートの特殊化を削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
392
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
393 20210214; version 2.900:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
394 ・文字列のみからなる選択(例:/abc|abd|acde/)用の最適化処理を新規に追
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
395 加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
396 ・u(8|16)[cs]regex_(token_)?iteratorがコンパイルエラーとなり使用できな
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
397 かった問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
398 ・その他細かな改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
399
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
400 20210131; version 2.810:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
401 ・UTF-8用内部iteratorの改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
402
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
403 20200724; version 2.800:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
404 ・文字クラスの二分探索にEytzinger layoutを導入。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
405 ・小さな文字クラス用に線形探索を再実装。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
406 ・名前付き括弧の名前部分をパーズするためのプロパティーデータの扱いを変
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
407 更。basic_regex型インスタンス内に読み込むのを止めて、必要な時のみ読
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
408 み込むように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
409
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
410 20200714; version 2.730:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
411 ・入れ子になった捕獲括弧で冗長な退避・復元処理をせぬように変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
412 ・regex_iteratorの改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
413
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
414 20200703; version 2.720:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
415 ・非ASCII文字を含むUTF-8文字列または非BMPの文字を含むUTF-16文字列を、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
416 Boyer-Moore-Horspoolアルゴリズムを用いて、大文字小文字の区別無しで
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
417 (icase/case-insensitiveで) 検索する場合の処理の改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
418 ・Version 2.650での変更により、regex_iterator->prefix().firstが前回マ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
419 ッチした位置の終端ではなく文字列全体の最初を指すようにになってしまっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
420 ていたのを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
421 ・上記修正に合わせて3イテレータ版のregex_search()が呼ばれる場合、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
422 match_results.position()は戻り読みの逆行限界として渡された位置
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
423 (regex_searchの第3引数)を起点とした位置を返し、
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
424 match_results.prefix().firstは検索開始位置(同第1引数)を指すように
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
425 変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
426 ・BMH検索時に、不正なUTF-8シークウェンスの前後にある有効なシークウェン
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
427 スが読み飛ばされてしまう問題を修正(2.630でUTF-8の処理方法を変えた時
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
428 に混入したバグ)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
429
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
430 20200701; version 2.710:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
431 ・Boyer-Moore-Horspool検索の調整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
432
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
433 20200630; version 2.700:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
434 ・最適化処理の調整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
435
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
436 20200620; version 2.651:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
437 ・グループ名のチェックを行う位置を\uエスケープの解釈後に移動。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
438 ・misc/sample01.cppをversion 1.103に更新。参照しているECMAScript仕様書
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
439 の版を2020(ES11)に変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
440
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
441 20200618; version 2.650:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
442 ・名前付き括弧に捕獲された文字列へのアクセス用函数に、グループ名をポイ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
443 ンタで指定するoverloadをmatch_resultsに追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
444 ・3イテレータ版のregex_search()使用時には、検索の開始位置ではなく戻り
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
445 読み (lookbehind) の逆行限界として渡された位置のほうを
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
446 match_results::prefix::firstにセットするよう変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
447 ・不要と思われる処理をいくつか削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
448
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
449 20200601; version 2.643:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
450 ・syntax_option_typeおよびmatch_flag_typeのoperator函数にinline指定を
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
451 追加(これがないとリンク時に多重定義エラーが出ることがあるとのご指摘
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
452 がありました)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
453 ・その他細かな改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
454
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
455 20200530; version 2.642:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
456 ・basic_regex型インスタンスが確保するメモリのサイズを削減。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
457
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
458 20200528; version 2.641:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
459 ・2.640での修正1が不完全であったため再修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
460 ・最適化処理の調整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
461
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
462 20200516; version 2.640:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
463 ・最適化バグの修正1: regex_matchが入力文字列の終端を通り過ぎてしまうこ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
464 とがあった問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
465 ・最適化バグの修正2: multilineフラグ指定時に ^ や $ が適切な位置でのマ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
466 ッチングをさせてもらえなくなってしまっていた問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
467 ・srell_ucfdata2.hppとsrell_updata.hppとを更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
468
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
469 20200509; version 2.630:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
470 ・正規表現中に不正なUTF-8のシークウェンスがあった場合、パターンコンパ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
471 イラがregex_utf8をthrowするように仕様変更(検索対象文字列中に不正な
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
472 UTF-8の並びがあってもエラー扱いされません)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
473 ・UTF-8でBMH検索が行われる際、マッチした箇所の直後に余分な後続
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
474 (trailing) バイトが続いていた場合にその部分もマッチング結果に含めて
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
475 しまう問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
476 ・basic_regex.flags() が正しい値を返さないことがあったのを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
477 ・正規表現中で実際には使われていないグループ名 (NAME) を
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
478 match_results.format()に渡す書式文字列の中で$<NAME>のようにして指定
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
479 すると、その部分が空文字に置換されずそのまま残ってしまう問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
480
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
481 20200502; version 2.620:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
482 ・Boyer-Moore-Horspoolアルゴリズム用クラスからmatch_continuous指定時用
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
483 およびregex_match用の函数を削除。これらの処理時は以前のようにオート
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
484 マトンを使うように変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
485 ・その他クリーンナップ。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
486
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
487 20200428; version 2.611:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
488 ・/\d*/ が "abc" の冒頭にマッチせず末尾にマッチする問題を修正(Version
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
489 2.210で混入したバグ)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
490
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
491 20200426; version 2.610:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
492 ・Case-insensitive (icase) なBMH検索が行われる際、探している文字列が検
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
493 索対象テキスト全体の先頭にあった場合に読み飛ばされてしまうことがある
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
494 バグを修正(UTF-8またはUTF-16で、検索文字列の末尾が複数のコードユニ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
495 ットからなる文字である場合に発生)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
496 ・キャプチャグループ名のパーズをECMAScriptの仕様書通りきっちり行うよう
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
497 に変更。これにより、前の版までは受理されていた /(?<,>...)/ のような
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
498 グループ名はregex_errorがthrowされるように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
499
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
500 20200418; version 2.600:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
501 ・戻り読み (lookbehind) の逆行限界を直接regex_search()に渡せるように
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
502 3イテレータ版のregex_search()を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
503 ・[非互換変更] 2.300で導入したmatch_flag_typeのmatch_lblim_availフラグ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
504 と、match_resultsのlookbehind_limitメンバとを廃止。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
505 ・srell_ucfdata2.hppとsrell_updata.hppとをUnicode 13.0.0対応に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
506 ・unicode/updataout.cppをUnicode 13対応に更新(ECMAScript 2020で対応さ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
507 れる見込みのスクリプト名の先行対応)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
508
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
509 20191118; version 2.500:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
510 ・初めてbasic_regex型インスタンスが作られた時にcase foldingデータから
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
511 icaseマッチング用テーブルを展開するのに代えて、最初から計算済みテー
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
512 ブルを保持しているように仕様変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
513 ・上記変更に併せてsrell_ucfdata.hppおよびそれを出力するucfdataout.cpp
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
514 はお役御免とし、代わりに展開済みicase用テーブルを保持する
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
515 srell_ucfdata2.hppとそれを出力するucfdataout2.cppとを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
516 ・文字クラスの照合方法を線形探索から二分探索に変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
517 ・文字クラスの最適化処理のタイミングを「']' が見つかった時にまとめて一
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
518 括」から「文字または文字コードの範囲をpushするたびごと逐次」に変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
519 ・assertをすべて削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
520 ・連続する\uHHHHがサロゲートペアをなしている場合はUnicode値として解釈
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
521 するように変更(これによりECMAScript仕様との相違はなくなりました)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
522 ・SRELL_NO_NAMEDCAPTUREマクロ使用時にコンパイルエラーが出ていたのを修
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
523 正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
524 ・updataout.cppを1.101にヴァージョンアップ。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
525 ・単体版のsrellを追加(single-headerディレクトリ内)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
526
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
527 20190914; version 2.401:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
528 ・basic_regex型インスタンスのサイズを削減(Unicode property escapes対
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
529 応時にうっかり膨張させてしまっていました)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
530 ・basic_regex::swap()の改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
531
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
532 20190907; version 2.400:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
533 ・文字クラスの照合速度を改善。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
534 ・パターンコンパイル時にグループ名中の\uエスケープを解釈するように変更
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
535 (ECMAScriptの仕様に準拠)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
536 ・ucfdataout.cppを1.200にヴァージョンアップ。このプログラムが出力する
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
537 srell_ucfdata.hpp中のunicode_casefoldingクラスに、新たにメンバ変数が
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
538 追加されました。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
539 SRELL 2.400以降はこの追加されたメンバ変数をコンパイル時に必要とする
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
540 ため、ucfdataout.cpp 1.101以前によって出力されたsrell_ucfdata.hppを
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
541 SRELL 2.400以降で使うことはできません(古いSRELLで新しい
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
542 srell_ucfdata.hppを使うことは可)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
543 ・その他コードの整理や改良など。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
544
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
545 20190902; version 2.304:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
546 ・Version 2.303のコード整理で壊れてしまっていたregex_iteratorを修復。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
547
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
548 20190810; version 2.303:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
549 ・2.302の修正が不完全であったため再修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
550 ・その他コードの整理。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
551
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
552 20190809; version 2.302:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
553 ・(?...) に繰り返し指定がついている時、内側の括弧によって捕獲された文
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
554 字列がループごとにクリアされず持ち越されていたバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
555 例:/(?:(ab)|(cd))+/.exec("abcd") → 1番括弧はundefinedになるはずが
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
556 "ab"になってしまっていた。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
557 ・misc/sample01.cppをversion 1.102に更新。テスト名中の章番号を
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
558 ECMAScript 2019 (ES10) 準拠に変更
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
559
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
560 20190724; version 2.301:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
561 ・ECMAScriptの仕様に準じて、\でエスケープ可能な文字の種類を次の15字に
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
562 限定。^$\.*+?()[]{}|/
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
563 文字クラス内([]内)ではこの15字に加えて '-' も対象に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
564
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
565 20190717; version 2.300:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
566 ・検索対象範囲とは別に、戻り読み (lookbehind) の逆行限界を指定できる機
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
567 能を追加(match_flag_typeへのmatch_lblim_availフラグの追加と
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
568 match_resultsへのlookbehind_limitメンバの追加)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
569 これに併せてregex_iteratorのコンストラクタ内でも、内部で使うprivate
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
570 なmatch_results型インスタンスのlookbehind_limitメンバに値を設定する
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
571 ように変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
572 ・ECMAScriptの仕様に合わせて、後方参照が対応する捕獲括弧より先に出現し
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
573 てもエラー扱いせぬように変更。/\1(.)/, /(?<=(.)\1)/, /\k<a>(?<a>.)/
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
574 などすべてOKに。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
575 ・misc/sample01.cppをversion 1.101に更新。misc.jsより準拠テストを1つ追
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
576 加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
577
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
578 20190714; version 2.230:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
579 ・正規表現が '*' か '+' かを伴う文字または文字クラスで始まる場合の検索
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
580 速度を改善(例:/[A-Za-z]+ing/)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
581
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
582 20190707; version 2.221:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
583 ・std::u8stringの利用可否は__cpp_char8_tではなく__cpp_lib_char8_tを用
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
584 いて判断するように変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
585 ・icase指定時にcase-folding処理をした結果、文字クラス内の文字がすべて
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
586 同じ文字になった場合には、文字クラスを解消して文字リテラルとして処理
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
587 するように変更。例:/r[Ss\u017F]t/i → /rst/i。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
588 ・その他問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
589
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
590 20190617; version 2.220:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
591 ・カウンタを使わぬほうが内部表現がコンパクトになる繰り返しはカウンタを
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
592 使わぬように変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
593 ・最適化バグにより、/a{1,2}?b/.exec("aab") が "aab" ではなく "ab" を返
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
594 していたのを修正(発生条件:最短一致優先の回数指定が付いている文字ま
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
595 たは文字クラスの後ろに、その文字集合と排他的な文字または文字クラスが
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
596 続いている場合)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
597
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
598 20190613; version 2.210:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
599 ・/ab|cd|ef/ のような表現('|' で区切られている文字列の先頭文字が互い
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
600 に排他的な場合)の照合方法を改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
601
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
602 20190603; version 2.202:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
603 ・BMHアルゴリズムが使われる状況で、regex_matchがregex_search相当の処理
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
604 をしてしまうバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
605
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
606 20190531; version 2.200:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
607 ・通常の(正規表現ではない)テキスト検索用に、Boyer-Moore-Horspoolアル
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
608 ゴリズムに基づく実装を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
609 ・UTF-8用iteratorの改良。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
610 ・icase指定時の\b/\Bの挙動を修正。/.\B./i が "s\u017F" にマッチするよ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
611 うに。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
612 ・その他問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
613
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
614 20190508; version 2.100:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
615 ・Lookbehind中に文字列のキャプチャがあり、かつその中および左方に可変長
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
616 の正規表現があった場合、文字列の捕獲に失敗することがあったのを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
617 例:"1053" =~ /(?<=(\d+)(\d+))$/ で$2に適切な文字列がセットされず。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
618 ・srell_ucfdata.hppとsrell_updata.hppとをUnicode 12.1.0対応に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
619 ・unicode/updataout.cppをUnicode 12対応に更新(ECMAScript 2020で対応さ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
620 れる見込みのスクリプト名の先行対応)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
621 ・srell.hpp中の改行コードをCR+LFからLFに変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
622 ・unicode/*.cppが出力するファイルの改行コードをCR+LFからLFに変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
623 ・misc/sample01.cppをversion 1.010に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
624 1. テスト名中の章番号をECMAScript 2018 (ES9) 準拠に変更(前版までは
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
625 ECMAScript 5.1までの章番号準拠でした)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
626 2. ECMAScript 2018規格の2.2.2.3 NOTEから準拠テストを1つ追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
627 ・C++11の機能の使用可否を判定するマクロを変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
628 ・文字クラスの処理方法を変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
629 ・basic_regexの全コンストラクタと全assign函数とでflag_typeのdefault引
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
630 数を指定できるように、syntax_option_typeとmatch_flag_typeとを再実装
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
631 (TR1→C++11間の変更の見落とし)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
632 ・char8_t型に試験対応。コンパイラがchar8_tに対応している場合
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
633 (__cpp_char8_tマクロ定義の有無で判断)、"u8-"というprefixの付いた
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
634 クラスは「char8_t型文字列を受け取り、それをUTF-8として扱う」ように。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
635 char8_tに未対応の場合は従来通り、char型文字列をUTF-8として処理。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
636 ・常に「char型文字列をUTF-8として扱う」クラスとして新規に"u8c-"という
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
637 prefixに付いたクラスを追加。2.002までの"u8-"付きクラス相当。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
638 ・u8cregex; u8ccmatch, u8csmatch; u8ccsub_match, u8cssub_match;
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
639 u8ccregex_iterator, u8csregex_iterator; u8ccregex_token_iterator,
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
640 u8csregex_token_iterator.
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
641
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
642 20180717; version 2.002:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
643 ・ECMAScriptの仕様に合わせて \u{h...} の h... 部分の最大桁数を6から無
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
644 制限に変更(変更前の1~6桁というのは提案書に基づく実装でした)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
645 ・updataout.cppを1.001に更新。新規に追加されたスクリプト名をエラー扱い
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
646 せぬように修整。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
647 ・srell_ucfdata.hppとsrell_updata.hppとをUnicode 11.0.0対応に更新。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
648
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
649 20180204; version 2.001:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
650 ・icase指定時に、[\W](\Wを含む文字class)が [KkSs\u017F\u212A] のいず
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
651 れにもマッチせぬよう変更(関連:ecma262 issue #512)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
652
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
653 20180127; version 2.000:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
654 ・ECMAScript 2018のRegExpに追加されることになった次の機能を実装:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
655 ・'.' があらゆるコードポイントにマッチするようにするための指定
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
656 "dotall" フラグを、srell::regex_constants内の syntax_option_type
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
657 および srell::basic_regex内の flag_type に追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
658 ・Unicode property用の表現、\p{...} と \P{...} とを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
659 ・名前付きキャプチャ (?<NAME>...) と、名前付きキャプチャによって捕獲
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
660 された文字列を後方参照するための正規表現、\k<NAME> とを追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
661 ・戻り読み (lookbehind) の振る舞いを変更。(?<=...), (?<!...) とも可変
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
662 幅の戻り読みに対応。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
663
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
664 20180125; version 1.401:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
665 ・ECMAScriptの仕様に合わせて、match_results.format()内で後方参照として
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
666 認識される数値を99までに制限(即ち$1~$9および$01~$99のみ有効)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
667 ・長い間メンテナンスしていないマクロを削除。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
668
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
669 20180101; version 1.400:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
670 ・/(?:)*/ のように、空のnon-capturingグループにも量指定子を付けられる
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
671 ように変更(ECMAScriptのRegExpとの互換性確保のための変更で、使い道は
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
672 おそらくありません)。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
673 ・次の3条件が揃った時に固まってしまったのを修正: 1) non-capturingグル
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
674 ープに量指定子が付いていて、2) そのグループ自身が0幅になり得て、3)
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
675 そのグループ内の最後以外の場所に、0幅になり得る後方参照が現れる時。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
676 たとえば /(.*)(?:\1.*)*/ のような表現。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
677
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
678 20171216; version 1.300:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
679 ・最適化処理のバグにより、/^(;[^;]*)*$/ が ";;;;" にマッチしなかった問
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
680 題を修正。この問題の発生条件は次の通り:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
681 ・/(A...B*)*$/ のような終わり方をしていて、かつAとBとが互いに排他的
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
682 な文字または文字集合である場合。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
683
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
684 20170621; version 1.200:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
685 ・srell_ucfdata.hppをUnicode 10.0.0対応に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
686 ・不正なUTF-8 sequenceに対するu8regex_traitsの振る舞いを改善。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
687
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
688 20150618; version 1.141:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
689 srell_ucfdata.hppをUnicode 8.0.0対応に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
690
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
691 20150517; version 1.140:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
692 ・regex_match()がマッチの成否を判定する方法の変更。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
693 (C++ Standard Library Issues List #2273 への対応)
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
694 ・ECMAScriptの仕様に合わせて \cX の X の範囲を [A-Za-z] に制限。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
695 ・look-around assertions中の丸括弧が、ある条件下で正しく文字列をキャプ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
696 チャせぬ場合があった問題を修正。Version 1.111での修正が不完全であっ
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
697 たことによるもの。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
698
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
699 20150503; version 1.130:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
700 ・case-folding用函数の改善。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
701 ・unicode/ucfdataout.cppをversion 1.100に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
702 ・u(16|32)[cs]match用の#if directives中にあったtypoを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
703
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
704 20150425; version 1.120:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
705 ・UTF-8文字列においてU+010000-U+10FFFFの範囲の文字(4オクテット長の文
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
706 字)が認識されぬバグを修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
707 ・misc/sample01.cppをversion 1.010に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
708
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
709 20150402; version 1.111:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
710 ・最適化処理のバグにより、"aaa" =~ /((.*)*)/ の $2 が "aaa" ではなく空
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
711 になってしまう問題を修正。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
712
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
713 20141101; version 1.110:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
714 ・バグ報告による修正:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
715 1. basic_regex::assign() 内の compile() に "this->" を追加。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
716 2. operator=() 函数を明示的に実装。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
717 ・unicode/ucfdataout.cppをversion 1.001 に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
718
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
719 20140622; version 1.101:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
720 srell_ucfdata.hppをUnicode 7.0.0対応に。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
721
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
722 20121118; version 1.100:
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
723 最初のリリース版。
a0aa8c8c4307 dep/anitomy: port to use UCS-4 rather than wide strings
Paper <paper@paper.us.eu.org>
parents:
diff changeset
724