2

HXT を使用した XML 解析から番号付き要素を生成する矢印を作成しようとしています。State モナドのように状態アローを使用する必要があるように思われますが、HXT パッケージにあるすべての例と、状態にアクセスするメソッド ( XmlState ) は IOStateArrow を使用しており、純粋なままにしておきたいと思います。 StateArrow を使用して、テスト プロセスを簡素化します。そのような亜種は存在しますか? そうでない場合、IO で Arrow を実行する必要なく、HXT 解析に状態を追加するにはどうすればよいでしょうか?

4

1 に答える 1

3

そのために、 SLAのArrowStateインスタンスを使用できます。例: すべての第 2 レベルのテキスト要素を連結する必要があるとします。

Prelude Text.XML.HXT.Core> fst $ runSLA (xread >>> getChildren >>> getChildren >>> isText >>> getText >>> changeState (++)) "" "<xml><item>a</item><item>b</item></xml>" 
"ab"

にはインスタンスがないため、IO内で使用できないことに注意してください。SLAArrowIO

希望、それはあなたが必要とするものです。

于 2011-01-22T14:45:51.763 に答える