[Python-Dev] feature request: inspect.isgenerator (original) (raw)
Georg Brandl g.brandl at gmx.net
Mon May 29 22:09:21 CEST 2006
- Previous message: [Python-Dev] feature request: inspect.isgenerator
- Next message: [Python-Dev] feature request: inspect.isgenerator
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Fredrik Lundh wrote:
Terry Reedy wrote:
def isgenerator(func): return func.funccode.coflags == 99
but it is rather ugly (horrible indeed). To me, part of the beauty of Python is that is so easy to write such things so compactly, so that we do not need megaAPIs with hundreds of functions and methods. so what's so "easy" about the magic constant 99 ? is there some natural and obvious connection between generators and that number that I'm missing, or is that constant perhaps best hidden inside some introspection support module?
It seems to be a combination of CO_NOFREE, CO_GENERATOR, CO_OPTIMIZED and CO_NEWLOCALS.
The first four CO_ constants are already in inspect.py, the newer ones (like CO_GENERATOR) aren't.
I wonder whether a check shouldn't just return (co_flags & 0x20), which is CO_GENERATOR.
Georg
- Previous message: [Python-Dev] feature request: inspect.isgenerator
- Next message: [Python-Dev] feature request: inspect.isgenerator
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]