I've got some decorators that work fine as such: @dec1(args1) @dec2(args2) @dec3(args3) def myfun(...): pass
However, I used that sequence quite a bit, so I figured I could do something like dec_all = dec1(args1)(dec2(args2)(dec3(args3))) to consolidate the whole mess down to @dec_all def myfun(...): pass However, this yields different (test-breaking) results. Messing around, I found that if I write it as dec_all = lambda fn: dec1(args1)(dec2(args2)(dec3(args3)(fn))) it works and passes all preexisting tests. What am I missing that would cause this difference in behavior? -tkc -- https://mail.python.org/mailman/listinfo/python-list