Как создать новый тип Python в C, который наследует другой тип Python, также определенный в C?
Поведение должно быть следующим:
# TypeA defined in C, has members called a1, a2, ...
a = TypeA()
# TypeB defined in C, has members called b1, b2, ...
# ... and inherits TypeA
b = TypeB()
# valid because TypeB inherits TypeA
print(b.a1())
# invalid because TypeA does NOT inherit TypeB
print(a.b1())
Это для Micropython. Я буду принимать ответ CPython, если он поможет ответить на вопрос Micropython.
Что касается MicroPython 1.9.4, наследование по типам, определенным в C, не поддерживается по соображениям эффективности. Ака, нам удалось пройти долгий путь без него. Да, в последнее время для этого все чаще появляются случаи, так что это будет реализовано в конечном итоге.
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once.