Hmm. The extensions documentation describes how to add instance
members to a class (PyMemberDef), but I want to add a class member.
Yes, this is constant for all instances of the class.
Hmm. The extensions documentation describes how to add instance
members to a class (PyMemberDef), but I want to add a class member.
Yes, this is constant for all instances of the class.
>
Any pointers?
Add something like this to your PyMODINIT_FUNC after you have
initialized your type with PyType_Ready:
>
Hmm. The extensions documentation describes how to add instance
members to a class (PyMemberDef), but I want to add a class member.
Yes, this is constant for all instances of the class.
>
Any pointers?
When? - at time of defining base class, between class definition and
first instance, at time of creating instance, or after instance creation?
After instance creation is not easy, I think you would have to add
to each instance...
In article <mailman.2814.1 169026003.32031 .python-list@python.org >,
"Hendrik van Rooyen" <mail@microcorp .co.zawrites:
|
| Hmm. The extensions documentation describes how to add instance
| members to a class (PyMemberDef), but I want to add a class member.
| Yes, this is constant for all instances of the class.
|>
|When? - at time of defining base class, between class definition and
|first instance, at time of creating instance, or after instance creation?
|>
|After instance creation is not easy, I think you would have to add
|to each instance...
Oh, one of the first two - I am not bonkers! Changing a class after
instance creation is guaranteed to cause confusion, if nothing else.
>
In article <mailman.2814.1 169026003.32031 .python-list@python.org >,
"Hendrik van Rooyen" <mail@microcorp .co.zawrites:
|
| Hmm. The extensions documentation describes how to add instance
| members to a class (PyMemberDef), but I want to add a class member.
| Yes, this is constant for all instances of the class.
|>
|When? - at time of defining base class, between class definition and
|first instance, at time of creating instance, or after instance creation?
|>
|After instance creation is not easy, I think you would have to add
|to each instance...
>
Oh, one of the first two - I am not bonkers! Changing a class after
instance creation is guaranteed to cause confusion, if nothing else.
>
*grin* - its also just about impossible to do, if you try to imagine
what you would have to do to all instances when you effectively
change the __init__ method. And some people expect it to happen
automagically.. .
Sorry I can't be of more help. All of the docs I have read essentially
talk about changing instances. From a practical point of view I would
say: "Just redefine it". But that is not very helpful. Specially if you are
mucking about in C, as your title suggests...
<off topic language note>
It has never struck me before that the root word for
"madness" and the slang for "copulation " is the same.
I wonder if there is some sort of a message here?
In article <mailman.2861.1 169101998.32031 .python-list@python.org >,
"Hendrik van Rooyen" <mail@microcorp .co.zawrites:
|>
| Oh, one of the first two - I am not bonkers! Changing a class after
| instance creation is guaranteed to cause confusion, if nothing else.
|
|*grin* - its also just about impossible to do, if you try to imagine
|what you would have to do to all instances when you effectively
|change the __init__ method. And some people expect it to happen
|automagically. ..
Oh, it's quite easy to do, with several different semantics. I have even
used a couple of them. All are seriously counter-intuitive :-)
I have never used one that successfully reran initialisation, though
I have seen people attempt it! And tried it myself ....
|Sorry I can't be of more help. All of the docs I have read essentially
|talk about changing instances. From a practical point of view I would
|say: "Just redefine it". But that is not very helpful. Specially if you are
|mucking about in C, as your title suggests...
Thanks. As someone else posted, the answer is PyDict_SetItemS tring
immediately after PyType_Ready.
Comment