Forums: 開発者 (Thread #25243)

変更履歴 (2010-01-28 14:35 by cielquis #48153)

次バージョンのリリースまでに修正・変更した箇所をメモするためのスレッド.

version 0.16.2 (2010-01-28 14:46 by cielquis #48154)

- boost::mpl 互換でいくつかのライブラリを作成.
 -- clx::mpl 名前空間以下に定義.
 -- ビット処理(バイト処理)を行うメタ関数.
 -- lower_mask, upper_mask, combine, reverse, rotate, min, max
- bitmask を mpl::lower_mask, mpl::upper_mask に変更.
- hexdump のインターフェースを変更.
 -- TODO: base64::encode, uri::encode,hexdump 辺りのインターフェースを合わせる.
- ini の修正.
 -- 特定のセクションに属さない key=value 群の処理.
 -- v[""]["key"] のようにしてアクセスする.
- ファイル操作関数群を作成.
 -- ※しばらく,正式リリースとしてはアナウンスしない.
 -- clx::filesystem 名前空間以下に定義.
 -- exists,list,copy (std::rename, std::remove は存在する).
 -- TODO: boost::filesystem が利用できるときはそれを利用するようにする.
- logger の作成.
 -- ※しばらく,正式リリースとしてはアナウンスしない.
 -- logger, appender, layout に分割して実装.
Reply to #48153

version 0.16.2 (2010-01-29 07:12 by cielquis #48168)

dump 関数の作成.dump は以下の 3 つのインターフェースを持つ.

template <class InIter, class OutIter, class Engine>
OutIter dump(InIter first, InIter last, OutIter result, Engine f);

template <class Ch, class Tr, class Engine>
std::basic_string<Ch, Tr> dump(const std::basic_string<Ch, Tr>& src, Engine f);

template <class CharT>
std::basic_string<Ch, Tr> dump(const CharT* src, Engine f);

以下の関数群は,この dump を利用するように変更する.
※ dump に指定するための Engine クラスを作成する.
- hexdump
- uri::encode, uri::decode
- html::escape
- base64::encode, base64::decode
これに伴って,上記の各関数のインターフェースを dump 互換に変更する.
Reply to #48153

RE: 変更履歴 (2010-03-16 17:57 by cielquis #49511)

- dump -> convert に関数名を変更.
- UTF-8 の関数を修正・追加
-- get_unicode() / peek_unicode()(取得した文字を Unicode に変換)を追加.
-- encode (Unicode -> UTF-8), decode (UTF-8 -> Unicode) を追加.
-- UTF-8 では UTF-16 のサロゲート・ペアは対応しない(例外送出).
- UTF-16 の関数を追加
-- get_unicode() / peek_unicode()(取得した文字を Unicode に変換)を追加.
-- 上記は,主にサロゲート・ペアへの対応.
Reply to #48153