Serge WEINSTOCK, 16.05.2013 10:55: > I'm currently writing a C extension module for python using the "raw" C-API. > I would like to be able to define "nested classes" like in the following > python code > > ============================================================ > class A: > class B: > def __init__(self): > self.i = 2 > def __init__(self): > self.b = A.B() > a = A() > b = A.B() > print(a.b.i) > print(b.i) > ============================================================ > > How can I create such nested class with the C-API?
Assuming you really mean Python classes and not extension types, you might get away with defining them separately and then assigning A.B = B Recent Python versions added a __qualname__ attribute for classes that you might want to fix up in this case. If you need better compatibility, consider writing your code in Cython. Stefan -- http://mail.python.org/mailman/listinfo/python-list