forked from ROMEO/nexosim

This avoids preemptive cloning when the closures don't consume the message, which is common when the filtering closure returns `None`.
This avoids preemptive cloning when the closures don't consume the message, which is common when the filtering closure returns `None`.