У меня есть простой класс Python:
class Node(object):
def __init__(self):
self._left = self
self._right = self
@property
def left(self):
return self._left
@left.setter
def left(self, value):
self._left = value
@property
def right(self):
return self._right
@right.setter
def right(self, value):
self._right = value
Я хотел бы создать этот класс, но не ясно, как определять типы, когда self._left
и self._right
имеют тип объекта Node
. Я наткнулся на этот другой ответ, который использует .class_type.instance_type
, но этот пример относится только к атрибуту класса, который содержит другой экземпляр класса. В моем случае, поскольку Node
еще не определено, я не могу объявить следующую спецификацию:
spec=[("_left", Node.class_type.instance_type),
("_right", Node.class_type.instance_type),
]
@jitclass(spec)
class Node(object):