Rangeをconcatする
- adobeにすでにあった・・・segmented_iterator
- これだけ変えれば怒られないだろう・・・concatenate_iterator
- 関係ないですが、やはり使うらしい・・・overload型
- さて、*itがrangeを返すようなitをTopIterator、返されたrangeをBottomRangeと呼ぶことに(勝手に)する
- このiteratorは、TopIteratorをコピーしても、BottomRangeのiteratorが無効にならない場合のみ使える
- このiteratorは要するに、"token" iteratorを"filter" iteratorに変換するのでとても重要と思われる
[]void[] []test[][]()[]
[]{[]
[]using[] []namespace[] []pstade[][];[]
[]using[] []namespace[] []oven[][];[][] {[]
[]std[][]::[][]string[] []input[][]([][]"This is his face"[][]);[]
[]boost[][]::[][]regex[] []re[][]([][]"\\w+"[][]);[][]BOOST_CHECK[][]( [][]oven[][]::[][]equals[][]([][]input[][]|[][]tokenized[][]([][]re[][])|[][]concatenated[][], [][]std[][]::[][]string[][]([][]"Thisishisface"[][]) ) );[]
[] }[]
[]}[]