我有一组五个功能,可以称为五种方式之一。我用这样的模式匹配来表达这一点,
type Configure = ReaderT Config IO ()
data Step = PreVal
| PreProc
| Proc
| PostProc
| PostVal
foo :: Step -> Configure
foo PreVal = do some stuff
foo PreProc = do some stuff
依此类推bar
,baz
并且设置类似
我知道如何使用sequence
来调用动作列表。给定一个[Step]
,我怎么能去打电话[foo,bar,baz]
。按顺序,同时还调用每个可能的步骤。
所以它应该这样做
foo PreVal
foo PreProc
......等等
bar Preval
bar PreProc
..等等
baz
......