From: Terry Reedy on 24 May 2010 14:30
On 5/24/2010 12:56 PM, Nathan Rice wrote:
> I'm trying to do some fairly deep introspection and instrumentation of
> instances and classes at runtime, and in order for everything to be
> properly behaved I need to have radically different behavior in the
> event that the thing passed to me is a wrapped class/instance. Is there
> a really good way, given an instance of a class, to determine if it is
> wrapped or native? Currently I check to see if it has __slots__ then
> try to setattr a dummy variable but I imagine there is probably a
> cleaner way.
I am not sure what you mean by 'wrapped'. Your subject line says
something different. In any case, is your universe *all* Python objects
or some subset?
Builtin classes, named or not, do not have dotted names
>>> 1 .__class__
>>> class C: pass
I believe all others do, including C-coded extension classes.