增加 JIT REPL
This commit is contained in:
1 parent
9910e05760
commit
a5ceb3d4eb
56 files changed
+7621
-584
No files matched your search
@@ -37,9 +37,20 @@ def set_current_file_imports(file_path: str) -> None:
|
||||
|
||||
# ---------------- set_current_file_type(委托 TypeGenResolve.set_current_file) ----------------
|
||||
def set_current_file_type(file_path: str) -> None:
|
||||
"""委托到 gen.set_current_file(原 Handles 壳)"""
|
||||
"""委托到 gen.set_current_file —— 报错归因的"当前文件"写入通道(原 Handles 壳)
|
||||
|
||||
与 fatal_error 同因同解:Converter 的 vpi 生成(Phase 1)、Phase A-pre-vpi
|
||||
跑在 BuildPipeline 注入 GenApi._g_gen 之前(BuildPipeline.vp 的
|
||||
_GeneratePyiFromAst 调用点早于 GenApi._g_gen 赋值),此时 _g_gen 为空;
|
||||
写侧若缺兜底会静默 no-op → fatal_error 的 get_current_file 读到的仍是
|
||||
上一个文件(归因错位)。故回退读 Generator 模块单例(main.vp 启动即注入)。
|
||||
"""
|
||||
if _g_gen is not None:
|
||||
_g_gen.TypeGenResolve.set_current_file(file_path)
|
||||
return
|
||||
gg: rawptr[Generator.Generator] = Generator._g_gen
|
||||
if gg is not None:
|
||||
gg.TypeGenResolve.set_current_file(file_path)
|
||||
|
||||
|
||||
# ---------------- set_current_module_sha1(委托 TypeGenBase.set_current_module_sha1) ----------------
|
||||
|
||||
Reference in new issue
Block a user