实现了 TPV 的 pyi 生成逻辑(部分),删除了直接拷贝自 CPython(TPC) 版本的死代码

This commit is contained in:
2026-07-22 19:47:23 +08:00
parent a99d2a5ad9
commit 751dc72d61
19 changed files with 641 additions and 1436 deletions

29
Test/App/circ_a.py Normal file
View File

@@ -0,0 +1,29 @@
import t, c
import stdlib
import circ_b
# ============================================================
# 循环引用测试:模块 A
#
# circ_a imports circ_b, circ_b imports circ_a — 循环引用
# ClassA.MakeB() 返回 circ_b.ClassB 实例(跨模块构造 + 类型注解)
# ============================================================
class ClassA:
x: t.CInt
def __new__(self, val: t.CInt):
r: ClassA | t.CPtr = stdlib.malloc(ClassA.__sizeof__())
return r
def __init__(self, val: t.CInt):
self.x = val
def GetValue(self) -> t.CInt:
return self.x
def MakeB(self) -> circ_b.ClassB | t.CPtr:
b: circ_b.ClassB | t.CPtr = circ_b.ClassB(self.x)
return b