[Python-Dev] PyPy, Jython, & IronPython: Enum convenience function and pickleablity (original) (raw)

Jeff Hardy jdhardy at gmail.com
Fri May 3 01:08:01 CEST 2013


On Thu, May 2, 2013 at 1:18 PM, fwierzbicki at gmail.com <fwierzbicki at gmail.com> wrote:

On Thu, May 2, 2013 at 12:07 PM, Ethan Furman <ethan at stoneleaf.us> wrote:

In order for the Enum convenience function to be pickleable, we have this line of code in the metaclass:

enumclass.module = sys.getframe(1).fglobals['name'] This works fine for Cpython, but what about the others? This should work for Jython, but I can't say I like it. I believe IronPython has a sort of speedup mode that disallows the use of getframe, and I'd like to add this to Jython someday.

It's not just a "speedup mode", it's the default. IronPython requires frames to explicitly enabled because tracking them is about a 10% performance hit (or so Dino told me once upon a time).

If you must use it, please copy the code block from namedtuple that ignores it on IronPython.



More information about the Python-Dev mailing list