Abhay Parvate wrote:
Hi Andrew,
I don't know whether it's intentional, but the patterns for "case line of" are not exaustive. Are you sure you do not expect anything else apart from a single "." or a line starting with '#'?
It's reading a wire protocol, so if you hit anything else there's been a protocol error. Arguably I should probably catch this case and report it gracefully. But really, there isn't much you could usefully do in this situation.
Please correct me if I am wrong; but the rest of the contents from the handle h will be unavailable after the evaluation of this function: it goes into a semi-closed state. (Correctly so: 'src' is supposed to have the entire contents obtained from h if needed.)
Quite so. If I was going with this approach, I'd have to call hGetContents and then parse the entire stream and act on it. For my current application, which is basically a server that receives requests and then replies to them, I *think* you could possibly do that. If, however, there were to be some command that said "hey, disregard everything I just said, and switch to this new parsing mode..." then I'd have a problem implementing that this way.