This abstract data type represents parse error messages. There are four kinds of messages:
data Message = SysUnExpect String
| UnExpect String
| Expect String
| Message StringThe fine distinction between different kinds of parse errors allows the system to generate quite good error messages for the user. It also allows error messages that are formatted in different languages. Each kind of message is generated by different combinators:
A SysUnExpect message is automatically generated by the
Text.Parsec.Combinator.satisfycombinator. The argument is the unexpected input.A UnExpect message is generated by the unexpected combinator. The argument describes the unexpected item.
A Expect message is generated by the <?> combinator. The argument describes the expected item.
A Message message is generated by the fail combinator. The argument is some general parser message.