У меня есть тип Handler [Maybe AvailableDay]
, я хотел бы проверить содержимое [Maybe AvailableDay] в ghci. Как я могу это сделать?
Как проверить значения внутри монады Handler в ghci?
Ответы (1)
Вы не можете просто извлечь «содержимое» Handler
, поскольку Handler
на самом деле является вычислением, которое может зависеть от текущего запроса, состояния сеанса и так далее. Так что, чтобы запустить его, вам придется кормить его всем этим. Это потребует использования runHandler
, а затем unYesodApp
и run
для полученного Iteratee
. Технически возможно, но невероятно грязно, чтобы сделать это самостоятельно.
Если вы не думаете, что значение зависит от чего-либо из этого, тогда вы сможете переписать его как чистое вычисление или как вычисление в монаде IO
, что должно быть намного проще для запуска.
person
hammar
schedule
07.11.2011