Unixのパイプみたいな感じで、イテレータに対してフィルタをかける。 かけるものはgrepのように一部を選ぶものだったり、 sedの(一部の機能の)ように各要素に変更を加えるものだったり、 so...
Unixのパイプみたいな感じで、イテレータに対してフィルタをかける。かけるものはgrepのように一部を選ぶものだったり、
sedの(一部の機能の)ように各要素に変更を加えるものだったり、
sortのように順番を変えるものだったり、
wcのように全然違うものを出力したりと、そういうイメージ。
んでこれって1つの仕組みでやるの大変だよな、
たとえばgrep相当のものはFilterIteratorがあるけどね、
http://jp.php.net/manual/ja/class.filteriterator.php
とか思ってたけど、
実は原理的には結構簡単なんじゃないか?
つまり各要素はイテレータなり配列なりを返せばよい。
要素1個のものか空のものを返すならgrepになるし、そのほかのものも適当に。
でもPHPはイテレータの実装がめんどうくさいから、
必要になるまではやる気が起きないけどね。