|
Just an idea (if you were planning on writing it yourself) you could model it after windows(i.e. message handling). You use the parser function to parse, then it has a set of events you want to handle. When the parser identifies an event (maybe a closed parenthesis after an open one), it fires the event, which may/may not change the position of the pointer you're parsing with, or it might call a new one. Like I said, just an idea.
|