Boost.Range iterator range ioの出力フォーマットとIOのためのアダプタ

BoostのTracにもう一件投稿。

Ticket #4454 - iterator range output format, and for IO adaptor

現在、iterator_range_ioによってRange {1,2,3}を出力すると以下のようなフォーマットになります:"123"。
このフォーマットではパースすることが難しい(もしくは不可能)です。


私は、Ovenによってインスパイアされた新たなRangeのフォーマットを提案します:"{1,2,3}"。
この提案は破壊的な変更ではありますが、現在のフォーマットはおそらく使用されていないでしょう。


また、標準コンテナを出力するのを容易にするため、
Rangeをiterator_rangeへとアダプトする、identities Rangeアダプタも合わせて提案します。
これもOvenによってインスパイアされたものです。


http://p-stade.sourceforge.net/oven/doc/html/oven/utilities.html#oven.utilities.io_hpp

http://p-stade.sourceforge.net/oven/doc/html/oven/range_adaptors.html#oven.range_adaptors.identities