poke package:valor

Just like peek, except if both the "test" and the "fail" validators fail, their results are mappended (<>).

Example

>>> let failV = failIf ["I'm less than 3"] (<3)

>>> let passV = failIf ["I'm greater than 4"] (>4)

>>> let testV = failIf ["I'm not divisible by 2"] odd

>>> let exV = poke failV passV testV
>>> validateP exV 7
Left (Valid 7)
>>> validateP exV 6
Right ["I'm greater than 4"]
>>> validateP exV 2
Left (Valid 2)
>>> validateP exV 1
Right ["I'm not divisible by 2","I'm less than 3"]