构造选择多个Maybe值的HXT箭头

时间:2014-11-18 19:55:25

标签: haskell hxt

我对HXT箭头API感到困惑。与列表monad类似,任何不产生结果的箭头都将确定[]的结果,匹配将成为所有匹配的笛卡尔积的一维中的元素。

我有一个带有嵌套可选元素的XML文件,如下所示:

<root>
 ...
 <b>
  <x>1</x>
  <y>2</y>
  ...
 </b>
 <x>3</x>
 <y>4</y>
 ...
</root>

如何构造一个箭头,该箭头将遍历此树一次,并产生与下面类似的固定结构的结果?我只关心结构的一小部分。

[(Just 1, Just 2), (Just 3, Just 4)] :: [(Maybe a, Maybe b), (Maybe a, Maybe b)]

[(Nothing, Nothing), (Just 3, Just 4)] :: [(Maybe a, Maybe b), (Maybe a, Maybe b)]

0 个答案:

没有答案