Скажем, у меня есть анализатор attoparsec, x
.
Я хочу создать функцию f :: Int -> Parser a -> Parser a
, чтобы если y = f n x
, то:
y
терпит неудачу, еслиx
терпит неудачуy
завершается ошибкой, еслиx
завершается успешно, аx
не потребляетn
байт.y
в противном случае удается
Как мне это сделать?