我一直在尝试用Haskell实现协议解析器,但对该语言尤其是单子(monads)方面还很陌生。我一直使用binary-0.5.0.2,并已经描述了我的协议的头部和所有有效载荷。我想要解析的消息看起来像这样:头部+(有效载荷A,有效载荷B,...),其中头部的一个字段指定了消息具有哪种类型的有效载荷。
我已经成功地解析了字节串中的第一个消息,但不知道如何读取下一个消息并且丢弃在处理第一个消息时读取的字节。
这可能相当模糊,但我宁愿得到关于通用解析器的输入,而不是将我的丑陋代码改为按照这种方式工作。
感谢您的帮助。
我已经成功地解析了字节串中的第一个消息,但不知道如何读取下一个消息并且丢弃在处理第一个消息时读取的字节。
这可能相当模糊,但我宁愿得到关于通用解析器的输入,而不是将我的丑陋代码改为按照这种方式工作。
感谢您的帮助。