def _wrapture(orig):

#    @functools.wraps(orig)
    def foo(*args):
        obj = args[0]
        obj.on_modify()
        return orig(*args)
    return foo
Check for logical equivalence.
dataset/ETHPy150Open meejah/txtorcon/txtorcon/torconfig.py/_wrapture--crossover with--dataset/ETHPy150Open nltk/nltk/nltk/sem/drt.py/DrtExpression.equiv