[Python-Dev] How to suppress instance dict? (original) (raw)

David Abrahams dave@boost-consulting.com
Sat, 22 Mar 2003 18:25:00 -0500


I am generating extension types derived from a type which is derived from int 'int' by calling the metaclass; in order to prevent instances of the most-derived type from getting an instance dict I am putting an empty tuple in the class dict as 'slots'. The problem with this hack is that it disables pickling of these babies:

"a class that defines slots without defining getstate cannot be pickled"

Yes, I can define getstate, setstate, and getinitargs (the only one that can actually do any work, since ints are immutable), but I was wondering if there's a more straightforward way to suppress the instance dict in the derived classes.

TIA,

Dave Abrahams Boost Consulting www.boost-consulting.com