Boost logo

Boost :

Subject: [boost] [spirit] semantic action for mismatches?
From: caustik (caustik_at_[hidden])
Date: 2011-01-07 18:54:17


I've come to notice that there seems to be a missing bit of symmetry in
spirit with regards to semantic actions.

If a rule matches, and thus executes it's semantic action(s), but a rule
which includes that rule mismatches, there seems to be no way to "unwind"
the code executed down the chain. For example, if one of your semantic
actions allocates memory or increments a reference count, how do you free /
release that reference in the mismatch scenario? I've thought about using
something like a shared_ptr, but it seems like that gets pretty sloppy and
unnatural. Is there something you can think of that would work?

caustik


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk