Files
TransPyC/.transpyc_cache/9fdf7e28103d0ff0.doc.json
2026-07-18 19:25:40 +08:00

1 line
4.9 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"reset_visible_structs": "重置可见性状态(每个文件翻译前调用)\n\n pool: 内存分配器(严格模式下创建 HashTable\n strict: 1=严格模式用户文件0=宽松模式includes 文件)\n ", "add_visible_struct": "添加可见结构体名(类定义时和 from-import 时调用)", "is_struct_visible": "检查结构体是否可见,返回 1=可见 / 0=不可见", "init_struct_table": "初始化结构体注册表,返回 1 成功", "_get_struct_entry": "获取第 i 个结构体条目", "_get_field_entry": "获取结构体中第 i 个字段条目", "register_struct": "注册结构体类型,返回 StructEntry 指针\n\n 用类型指针去重is 比较),不用类名去重。\n 这样跨模块同名类可以共存,各自有独立的字段定义。\n sha1 参数在注册时直接设置 ModuleSha1避免 set_struct_sha1 找错 entry。\n ", "set_struct_sha1": "设置结构体所属模块的 SHA1返回 1=成功 / 0=失败", "get_struct_sha1": "获取结构体所属模块的 SHA1返回 None=无 SHA1", "add_field": "向结构体添加字段,返回字段索引(-1 失败)\n\n default_val: 字段默认值 AST 节点可选None=无默认值)\n annot_class_name: 原始类型注解的类名(可选,用于联合类型字段的方法调用解析)\n ", "find_struct": "按类名查找结构体,返回 StructEntry 或 None", "find_struct_by_module": "按类名 + SHA1 查找结构体,返回 StructEntry 或 None\n\n SHA1 非 None 时:精确匹配 name+sha1未找到返回 None不回退避免跨模块同名找错\n SHA1 为 None 时:回退到 find_struct(name) 按类名查找第一个\n ", "find_struct_by_type": "按类型指针查找结构体is 比较),返回 StructEntry 或 None", "lookup_field": "按结构体类型和字段名查找字段信息\n\n 两遍查找策略(跨模块同名类冲突的根本修复):\n 第一遍: 类型指针 is 身份比较(最高优先级,类型唯一确定 entry\n 第二遍: 名称回退is 未匹配时,按类名/strstr 匹配,字段未找到时 continue\n ", "lookup_field_by_class": "按类名和字段名查找字段信息\n\n 优先用 SHA1 匹配(跨模块同名类区分),无 SHA1 时按类名查找第一个\n ", "get_struct_type": "按类名获取结构体的 LLVM 类型", "get_field_by_index": "按类名和字段索引获取字段信息", "struct_has_defaults": "检查结构体是否有任何带默认值的字段,返回 1=有 / 0=无", "_is_struct_type": "检查 ty 是否是 Struct 类型(独立函数,规避嵌套 match 编译器 BUG", "get_struct_type_from_value": "从 Value 的类型推断结构体类型", "mark_as_union": "标记已注册的结构体为联合体,返回 1=成功 / 0=失败", "is_union_by_name": "按类名检查是否为联合体,返回 1=是 / 0=否", "is_union_by_type": "按类型指针检查是否为联合体,返回 1=是 / 0=否\n\n 先尝试类型指针 == 比较,失败时回退到名称匹配\n ", "mark_as_oop": "标记已注册的结构体为 OOP返回 1=成功 / 0=失败", "is_oop_by_name": "按类名检查是否为 OOP 结构体,返回 1=是 / 0=否", "mark_has_init": "标记结构体拥有 __init__ 方法,返回 1=成功 / 0=失败", "has_init_by_name": "按类名检查是否有 __init__ 方法,返回 1=有 / 0=无", "mark_has_new": "标记结构体拥有 __new__ 方法,返回 1=成功 / 0=失败", "has_new_by_name": "按类名检查是否有 __new__ 方法,返回 1=有 / 0=无", "get_class_name_by_type": "按类型指针查找类名,返回类名字符串或 None", "_extract_struct_name": "从 LLVMType 提取 Struct 变体的 Name 字段,返回 None 非 Struct", "mark_has_vtable": "标记结构体拥有虚表,返回 1=成功 / 0=失败", "has_vtable_by_name": "按类名检查是否有虚表,返回 1=有 / 0=无", "mark_novtable": "标记结构体为 NoVTable返回 1=成功 / 0=失败", "is_novtable_by_name": "按类名检查是否为 NoVTable返回 1=是 / 0=否", "set_parent_name": "设置结构体的父类名,返回 1=成功 / 0=失败", "get_parent_name": "获取结构体的父类名,返回 None=无父类", "set_vtable_methods": "设置虚表方法名数组,返回 1=成功 / 0=失败", "get_vtable_method_index": "获取方法在虚表中的索引,返回 -1=未找到", "get_vtable_method_count": "获取虚表方法数量", "get_vtable_method_name": "获取虚表中第 idx 个方法名,返回 None=越界", "get_field_count": "获取结构体字段数量,返回 -1=未找到", "get_field_name_ptr": "获取 FieldEntry 的字段名,返回 None=未设置", "get_field_type_ptr": "获取 FieldEntry 的字段类型,返回 None=未设置", "get_field_default_ptr": "获取 FieldEntry 的默认值 AST 节点,返回 None=无默认值", "get_field_annot_class_name": "获取 FieldEntry 的原始类型注解类名,返回 None=未设置"}