修正了 TPC 的一些错误,包括 Test 维护后 TPV 无法重新编译或重编译后越界的部分问题

This commit is contained in:
2026-07-20 11:12:30 +08:00
parent ab73420b4f
commit a277ded8d4
476 changed files with 4000 additions and 3439 deletions

View File

@@ -1,50 +0,0 @@
"""
Auto-generated Python stub file from llvmlite.__values.py
Module: llvmlite.__values
"""
import t, c
from stdint import *
import string
import viperlib
import memhub
from linkedlist import GSListNode
from .__types import LLVMType, TypePrint
class Value(GSListNode[Value]):
Ty: LLVMType | t.CPtr
Name: t.CChar | t.CPtr
IsConst: t.CInt
IntVal: t.CInt64T
FloatVal: t.CDouble
VALUE_SIZE: t.CDefine = 48
def new_value(pool: memhub.MemBuddy | t.CPtr) -> Value | t.CPtr: pass
def ConstInt(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr, val: t.CInt64T, name: t.CChar | t.CPtr) -> Value | t.CPtr: pass
def ConstNull(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr, name: t.CChar | t.CPtr) -> Value | t.CPtr: pass
def ConstZero(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def ConstFloat(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr, val: t.CDouble) -> Value | t.CPtr: pass
def SSAValue(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr, name: t.CChar | t.CPtr) -> Value | t.CPtr: pass
def ValuePrint(buf: t.CChar | t.CPtr, size: t.CSizeT, val: Value | t.CPtr, pool: memhub.MemBuddy | t.CPtr) -> t.CInt: pass
def value_get_ty(val: Value | t.CPtr) -> LLVMType | t.CPtr: pass
def value_get_next(val: Value | t.CPtr) -> Value | t.CPtr: pass
def value_set_ty(val: Value | t.CPtr, ty: LLVMType | t.CPtr) -> t.CInt: pass
def value_set_next(val: Value | t.CPtr, nxt: Value | t.CPtr) -> t.CInt: pass
def value_set_name(val: Value | t.CPtr, name: t.CChar | t.CPtr) -> t.CInt: pass
def value_set_isconst(val: Value | t.CPtr, is_const: t.CInt) -> t.CInt: pass
def _append_str(dst: t.CChar | t.CPtr, dst_size: t.CSizeT, src: t.CChar | t.CPtr) -> t.CInt: pass

View File

@@ -1,120 +0,0 @@
"""
Auto-generated Python stub file from llvmlite.__types.py
Module: llvmlite.__types
"""
import t, c
from stdint import *
import viperlib
import string
import memhub
from linkedlist import GSListNode
class ParamNode(GSListNode[ParamNode]):
Ty: t.CVoid | t.CPtr
class LLVMType(t.REnum):
class Int:
Bits: t.CInt
class Ptr:
Pointee: LLVMType | t.CPtr
class Func:
Ret: LLVMType | t.CPtr
Params: ParamNode | t.CPtr
PCount: t.CInt
class Array:
ElemTy: LLVMType | t.CPtr
Count: t.CInt
class Struct:
Fields: ParamNode | t.CPtr
FCount: t.CInt
Name: t.CChar | t.CPtr
class Float:
Bits: t.CInt
class Void:
pass
class Label:
pass
class Metadata:
pass
def _new_type(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Int1(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Int8(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Int16(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Int32(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Int64(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Ptr(pool: memhub.MemBuddy | t.CPtr, pointee: LLVMType | t.CPtr) -> LLVMType | t.CPtr: pass
def Func(pool: memhub.MemBuddy | t.CPtr, ret: LLVMType | t.CPtr, params: ParamNode | t.CPtr, count: t.CInt) -> LLVMType | t.CPtr: pass
def Void(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Array(pool: memhub.MemBuddy | t.CPtr, elem_ty: LLVMType | t.CPtr, count: t.CInt) -> LLVMType | t.CPtr: pass
def Struct(pool: memhub.MemBuddy | t.CPtr, fields: ParamNode | t.CPtr, fcount: t.CInt, name: t.CChar | t.CPtr) -> LLVMType | t.CPtr: pass
def Half(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Float(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Double(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def FP128(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
def Label(pool: memhub.MemBuddy | t.CPtr) -> LLVMType | t.CPtr: pass
PNODE_SIZE: t.CDefine = 16
def new_param_node(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr) -> ParamNode | t.CPtr: pass
def param_list_append(head: ParamNode | t.CPtr, tail: ParamNode | t.CPtr, node: ParamNode | t.CPtr) -> ParamNode | t.CPtr: pass
def paramnode_get_ty(node: ParamNode | t.CPtr) -> LLVMType | t.CPtr: pass
def paramnode_get_next(node: ParamNode | t.CPtr) -> ParamNode | t.CPtr: pass
def paramnode_set_ty(node: ParamNode | t.CPtr, ty: LLVMType | t.CPtr) -> t.CInt: pass
def paramnode_set_next(node: ParamNode | t.CPtr, nxt: ParamNode | t.CPtr) -> t.CInt: pass
@t.NoVTable
class LLVMTypeCore:
Pool: memhub.MemBuddy | t.CPtr
def __init__(self: LLVMTypeCore, pool: memhub.MemBuddy | t.CPtr) -> t.CInt: pass
def Int1(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Int8(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Int16(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Int32(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Int64(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Ptr(self: LLVMTypeCore, pointee: LLVMType | t.CPtr) -> LLVMType | t.CPtr: pass
def Func(self: LLVMTypeCore, ret: LLVMType | t.CPtr, params: ParamNode | t.CPtr, count: t.CInt) -> LLVMType | t.CPtr: pass
def Array(self: LLVMTypeCore, elem_ty: LLVMType | t.CPtr, count: t.CInt) -> LLVMType | t.CPtr: pass
def Struct(self: LLVMTypeCore, fields: ParamNode | t.CPtr, fcount: t.CInt, name: t.CChar | t.CPtr) -> LLVMType | t.CPtr: pass
def Void(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Half(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Float(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Double(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def FP128(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def Label(self: LLVMTypeCore) -> LLVMType | t.CPtr: pass
def NewParamNode(self: LLVMTypeCore, ty: LLVMType | t.CPtr) -> ParamNode | t.CPtr: pass
def ParamListAppend(self: LLVMTypeCore, head: ParamNode | t.CPtr, tail: ParamNode | t.CPtr, node: ParamNode | t.CPtr) -> ParamNode | t.CPtr: pass
def PrintType(self: LLVMTypeCore, buf: t.CChar | t.CPtr, size: t.CSizeT, ty: LLVMType | t.CPtr) -> t.CInt: pass
def TypePrint(buf: t.CChar | t.CPtr, size: t.CSizeT, ty: LLVMType | t.CPtr, pool: memhub.MemBuddy | t.CPtr) -> t.CInt: pass
def _strappend(dst: t.CChar | t.CPtr, dst_size: t.CSizeT, src: t.CChar | t.CPtr) -> t.CInt: pass
def _print_struct_body(buf: t.CChar | t.CPtr, size: t.CSizeT, fields: ParamNode | t.CPtr, pool: memhub.MemBuddy | t.CPtr) -> t.CInt: pass
def PrintStructDefinition(buf: t.CChar | t.CPtr, size: t.CSizeT, ty: LLVMType | t.CPtr, pool: memhub.MemBuddy | t.CPtr) -> t.CInt: pass
def get_struct_name(ty: LLVMType | t.CPtr) -> t.CChar | t.CPtr: pass

View File

@@ -1,219 +0,0 @@
"""
Auto-generated Python stub file from llvmlite.__builder.py
Module: llvmlite.__builder
"""
import t, c
from stdint import *
import string
import viperlib
import memhub
from linkedlist import GSListNode, GSList
from .__types import LLVMType, TypePrint
from .__values import Value, new_value, SSAValue
from .__function import Function, BasicBlock, block_append_text, function_move_block_to_end, _ll_name_needs_quote
class IRBuilder:
Pool: memhub.MemBuddy | t.CPtr
Func: Function | t.CPtr
CurBlock: BasicBlock | t.CPtr
Counter: t.CInt
BUILDER_SIZE: t.CDefine = 32
def new_builder(pool: memhub.MemBuddy | t.CPtr, func: Function | t.CPtr) -> IRBuilder | t.CPtr: pass
def position_at_end(builder: IRBuilder | t.CPtr, block: BasicBlock | t.CPtr) -> t.CInt: pass
def _alloc_ssa_name(builder: IRBuilder | t.CPtr) -> t.CChar | t.CPtr: pass
def _type_str(builder: IRBuilder | t.CPtr, ty: LLVMType | t.CPtr) -> t.CChar | t.CPtr: pass
def _emit(builder: IRBuilder | t.CPtr, text: t.CChar | t.CPtr) -> t.CInt: pass
def _mark_terminated(builder: IRBuilder | t.CPtr) -> t.CInt: pass
def builder_cur_block_is_terminated(builder: IRBuilder | t.CPtr) -> t.CInt: pass
def build_alloca(builder: IRBuilder | t.CPtr, ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_load(builder: IRBuilder | t.CPtr, ty: LLVMType | t.CPtr, ptr: Value | t.CPtr) -> Value | t.CPtr: pass
def build_store(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, ptr: Value | t.CPtr) -> t.CInt: pass
def build_add(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_sub(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_mul(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_sdiv(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_udiv(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_srem(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_urem(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_and(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_or(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_xor(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_shl(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_lshr(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_ashr(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_fadd(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_fsub(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_fmul(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_fdiv(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_frem(builder: IRBuilder | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_fneg(builder: IRBuilder | t.CPtr, val: Value | t.CPtr) -> Value | t.CPtr: pass
def _build_binop(builder: IRBuilder | t.CPtr, op: t.CChar | t.CPtr, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
ICMP_EQ: t.CDefine = 0
ICMP_NE: t.CDefine = 1
ICMP_SGT: t.CDefine = 2
ICMP_SGE: t.CDefine = 3
ICMP_SLT: t.CDefine = 4
ICMP_SLE: t.CDefine = 5
ICMP_UGT: t.CDefine = 6
ICMP_UGE: t.CDefine = 7
ICMP_ULT: t.CDefine = 8
ICMP_ULE: t.CDefine = 9
FCMP_FALSE: t.CDefine = 0
FCMP_OEQ: t.CDefine = 1
FCMP_OGT: t.CDefine = 2
FCMP_OGE: t.CDefine = 3
FCMP_OLT: t.CDefine = 4
FCMP_OLE: t.CDefine = 5
FCMP_ONE: t.CDefine = 6
FCMP_ORD: t.CDefine = 7
FCMP_UNO: t.CDefine = 8
FCMP_UEQ: t.CDefine = 9
FCMP_UGT: t.CDefine = 10
FCMP_UGE: t.CDefine = 11
FCMP_ULT: t.CDefine = 12
FCMP_ULE: t.CDefine = 13
FCMP_UNE: t.CDefine = 14
FCMP_TRUE: t.CDefine = 15
def _icmp_pred_str(pred: t.CInt) -> t.CChar | t.CPtr: pass
def _fcmp_pred_str(pred: t.CInt) -> t.CChar | t.CPtr: pass
def build_icmp(builder: IRBuilder | t.CPtr, pred: t.CInt, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_fcmp(builder: IRBuilder | t.CPtr, pred: t.CInt, lhs: Value | t.CPtr, rhs: Value | t.CPtr) -> Value | t.CPtr: pass
def build_br(builder: IRBuilder | t.CPtr, target: BasicBlock | t.CPtr) -> t.CInt: pass
def build_cond_br(builder: IRBuilder | t.CPtr, cond: Value | t.CPtr, then_blk: BasicBlock | t.CPtr, else_blk: BasicBlock | t.CPtr) -> t.CInt: pass
def build_ret(builder: IRBuilder | t.CPtr, val: Value | t.CPtr) -> t.CInt: pass
def build_ret_void(builder: IRBuilder | t.CPtr) -> t.CInt: pass
def build_call(builder: IRBuilder | t.CPtr, callee: t.CChar | t.CPtr, args: Value | t.CPtr, arg_count: t.CInt, ret_ty: LLVMType | t.CPtr, is_variadic: t.CInt) -> Value | t.CPtr: pass
def build_call_indirect(builder: IRBuilder | t.CPtr, callee_val: Value | t.CPtr, args: Value | t.CPtr, arg_count: t.CInt, ret_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_bitcast(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_sext(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_trunc(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_zext(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_ptrtoint(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_inttoptr(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_fpext(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_fptrunc(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_fp2si(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_si2fp(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_fp2ui(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_ui2fp(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, to_ty: LLVMType | t.CPtr) -> Value | t.CPtr: pass
def build_gep(builder: IRBuilder | t.CPtr, elem_ty: LLVMType | t.CPtr, ptr: Value | t.CPtr, idx: Value | t.CPtr) -> Value | t.CPtr: pass
def build_gep_array(builder: IRBuilder | t.CPtr, array_ty: LLVMType | t.CPtr, elem_ty: LLVMType | t.CPtr, ptr: Value | t.CPtr, idx: Value | t.CPtr) -> Value | t.CPtr: pass
def build_gep_struct(builder: IRBuilder | t.CPtr, struct_ty: LLVMType | t.CPtr, field_ty: LLVMType | t.CPtr, ptr: Value | t.CPtr, field_idx: t.CInt) -> Value | t.CPtr: pass
class PhiIncoming(GSListNode[PhiIncoming]):
Val: Value | t.CPtr
Block: BasicBlock | t.CPtr
PHIINC_SIZE: t.CDefine = 24
def new_phi_incoming(pool: memhub.MemBuddy | t.CPtr, val: Value | t.CPtr, block: BasicBlock | t.CPtr) -> PhiIncoming | t.CPtr: pass
def build_phi(builder: IRBuilder | t.CPtr, ty: LLVMType | t.CPtr, incoming_head: PhiIncoming | t.CPtr, count: t.CInt) -> Value | t.CPtr: pass
class SwitchCase(GSListNode[SwitchCase]):
CaseVal: Value | t.CPtr
Block: BasicBlock | t.CPtr
SWCASE_SIZE: t.CDefine = 24
def new_switch_case(pool: memhub.MemBuddy | t.CPtr, case_val: Value | t.CPtr, block: BasicBlock | t.CPtr) -> SwitchCase | t.CPtr: pass
def build_switch(builder: IRBuilder | t.CPtr, val: Value | t.CPtr, default_blk: BasicBlock | t.CPtr, cases_head: SwitchCase | t.CPtr, case_count: t.CInt) -> t.CInt: pass
def build_select(builder: IRBuilder | t.CPtr, cond: Value | t.CPtr, true_val: Value | t.CPtr, false_val: Value | t.CPtr) -> Value | t.CPtr: pass
def build_unreachable(builder: IRBuilder | t.CPtr) -> t.CInt: pass
ATOMIC_XCHG: t.CDefine = 0
ATOMIC_ADD: t.CDefine = 1
ATOMIC_SUB: t.CDefine = 2
ATOMIC_AND: t.CDefine = 3
ATOMIC_NAND: t.CDefine = 4
ATOMIC_OR: t.CDefine = 5
ATOMIC_XOR: t.CDefine = 6
ATOMIC_MAX: t.CDefine = 7
ATOMIC_MIN: t.CDefine = 8
ATOMIC_UMAX: t.CDefine = 9
ATOMIC_UMIN: t.CDefine = 10
ATOMIC_ORDER_NOTATOMIC: t.CDefine = 0
ATOMIC_ORDER_UNORDERED: t.CDefine = 1
ATOMIC_ORDER_MONOTONIC: t.CDefine = 2
ATOMIC_ORDER_ACQUIRE: t.CDefine = 3
ATOMIC_ORDER_RELEASE: t.CDefine = 4
ATOMIC_ORDER_ACQ_REL: t.CDefine = 5
ATOMIC_ORDER_SEQ_CST: t.CDefine = 6
def _atomic_op_str(op: t.CInt) -> t.CChar | t.CPtr: pass
def _atomic_order_str(ord: t.CInt) -> t.CChar | t.CPtr: pass
def build_atomicrmw(builder: IRBuilder | t.CPtr, op: t.CInt, ptr: Value | t.CPtr, val: Value | t.CPtr, order: t.CInt) -> Value | t.CPtr: pass
def build_cmpxchg(builder: IRBuilder | t.CPtr, ptr: Value | t.CPtr, cmp_val: Value | t.CPtr, new_val: Value | t.CPtr, succ_order: t.CInt, fail_order: t.CInt) -> Value | t.CPtr: pass
def build_inline_asm(builder: IRBuilder | t.CPtr, ret_ty: LLVMType | t.CPtr, asm_text: t.CChar | t.CPtr, constraints: t.CChar | t.CPtr, has_side_effects: t.CInt) -> Value | t.CPtr: pass
def _append_cstr(dst: t.CChar | t.CPtr, dst_size: t.CSizeT, src: t.CChar | t.CPtr) -> t.CInt: pass

View File

@@ -1 +0,0 @@
{}

View File

@@ -1,41 +0,0 @@
"""
Auto-generated Python stub file from main.py
Module: main
"""
import t, c
from stdint import *
import stdio
import string
import stdlib
import memhub
import argparse
import w32.win32console as w32cmd
import w32.fileio as fileio
import w32.win32file
import w32.win32base
import sys
import ast
import lib
import lib.core.VLogger as VLogger
import lib.core.Handles.HandlesTranslator as HandlesTranslator
import lib.core.Handles.HandlesStruct as HandlesStruct
import lib.core.Handles.HandlesExprCall as HandlesExprCall
import lib.core.BuildPipeline as BuildPipeline
import lib.core.IncludesScanner as IncludesScanner
import lib.core.StubMerger as StubMerger
import lib.core.Phase1 as Phase1
import lib.core.Phase2 as Phase2
import lib.Projectrans.Config as Config
import lib.Projectrans.Utils as Utils
import llvmlite
import subprocess
import viperlib
import hashlib
POOL_SIZE: t.CDefine = 1073741824
CODE_PAGE: t.CDefine = 65001
SRC_BUF_SIZE: t.CDefine = 1048576
def main() -> int: pass

File diff suppressed because one or more lines are too long

View File

@@ -1,13 +1,13 @@
001c1416e7a7dc50:lib\core\Handles\HandlesMain.py
0035c95a18d4f8e8:includes/w32\fileio.py
02885f6f134079c2:lib\core\Handles\HandlesVar.py
05c11f22675c60cb:includes/llvmlite\__values.py
067c78e9f121dce3:includes/w32\win32process.py
06f53cc594b4ac6c:includes/w32\win32sync.py
07a8c82a8ca2be90:lib\core\Handles\HandlesExprOps.py
0c212981c180e7fb:includes/ast\lexer.py
0c56128647a0b845:lib\core\Handles\HandlesType.py
0df65b8ed15664b0:includes/hashlib\__sha1.py
15f1ded02f3aa5bc:includes/llvmlite\__types.py
19f8024d10c828e8:includes/hashlib\__md5.py
20cd49775c100a38:includes/json\__writer.py
21a7fcfc665f75ef:includes/llvmlite\__module.py
@@ -22,9 +22,8 @@
3d3edda4a4e6c08b:lib\core\Handles\HandlesAssign.py
4020cac9bab5e9f1:lib\core\Handles\HandlesFunctions.py
4337fb260448bbe2:includes/ast\astaux.py
455ff4e74c3dbfb0:includes/llvmlite\__types.py
46ea362b72c10a9e:includes/llvmlite\__builder.py
47767b5026a8ee15:includes/ast\exprs.py
47775d5e50909338:includes/memhub.py
48fa8cc758d3826b:lib\core\Handles\HandlesFor.py
49cf633017627a4a:lib\Projectrans\Config.py
4dd6b3f1427d1cc5:includes/ast\match.py
@@ -35,45 +34,47 @@
5dab8cb390496d22:includes/ast\base.py
6503c97dde0c79c4:includes/posix.py
657e182b27c2a022:includes/ast\stmts.py
668790e6c9efdbae:includes/_list.py
66de93aaeebc0601:lib\core\Handles\HandlesIf.py
6b3bc463fd044545:includes/llvmlite\__verify.py
6f62fe05c5ea1ceb:includes/stdio.py
6ff26590374ae6fc:includes/hashlib\__sha512.py
71e0a3ffcb3ebfad:includes/stdarg.py
72e2d5ccb7cedcf1:includes/w32\win32memory.py
78bbe886bbe5ca8f:lib\core\Handles\HandlesImports.py
7e260c14d2712119:lib\core\Phase2.py
7e529fe7a078cfef:includes/w32\win32base.py
81eb28ba912467a6:lib\core\Handles\HandlesBody.py
83ba314b4637eec9:lib\core\Handles\HandlesBase.py
888ea5bd6ab516ae:lib\Projectrans\Utils.py
89b3965176cd2407:includes/llvmlite\__function.py
8f12094c840be06a:lib\__init__.py
90c53dd6db8d41cf:includes/stdlib.py
93c1d18e35d188d6:includes/platmacro.py
950028de389b7a7b:main.py
946e087da91aaada:includes/llvmlite\__builder.py
9474791561654346:includes/string.py
95394ca8da0f655a:includes/llvmlite\__init__.py
96837bcc64032444:includes/hashlib\__init__.py
ab6e54ba9a669f76:includes/string.py
9d90ff4bae201361:lib\core\StubMerger.py
a1a7dbafa49abfd1:lib\core\IncludesScanner.py
aba439b7882ad9d6:includes/argparse.py
ae0cc890f657076d:lib\core\Handles\HandlesExpr.py
af9484a65085bf4b:lib\core\Handles\HandlesNonlocal.py
b29b80b6106e4be7:lib\core\Handles\HandlesExprCall.py
b547ac4f380bddb6:includes/ast\tokens.py
b5a965302cded36b:includes/sys.py
b5d05dbd7fee36ef:lib\core\StubMerger.py
b8c66c8ff44eb874:includes/hashtable.py
bbdf3bbd4c3bc28c:includes/w32\win32console.py
bd82e3ca81546c76:lib\core\IncludesScanner.py
c3b259b4059f8668:includes/viperlib.py
c4f2d483ec0f4db5:lib\core\Handles\HandlesClassDef.py
c8d5323b1a4df063:lib\core\Phase1.py
c9d54a4158f7f5a8:includes/hashlib\__sha256.py
c9f4be41ca1cc2b4:includes/viperio.py
d1599ecbac5b6586:lib\core\BuildPipeline.py
d4117f5e00a6c3b5:includes/llvmlite\__verify.py
d9322f0db660edd8:lib\core\Handles\HandlesReturn.py
db7c4a8f09d02a17:lib\core\Phase1.py
e0b84369e50c937c:includes/llvmlite\__function.py
e5be27ae4fe7ce04:lib\core\Handles\HandlesEnum.py
ee084e9fc6ee413a:includes/memhub.py
ee52c08239684346:includes/ast\parser.py
f2ecbf8ced20575c:includes/_list.py
f5522571bcce7bcb:includes/stdint.py
f6b51804a0ba8ff0:includes/w32\win32file.py
f8e903a99e1d0a57:main.py
f9e36e2cd6fa659f:includes/llvmlite\__values.py

Binary file not shown.

View File

@@ -1,48 +0,0 @@
"""
Auto-generated Python stub file from string.py
Module: string
"""
from stdint import *
import t, c
def strcpy(dest: str, src: str) -> str: pass
def strcat(dest: str, src: str) -> str: pass
def strncpy(dest: str, src: str, n: t.CSizeT) -> str: pass
def strlen(src: str) -> t.CSizeT | t.CExport: pass
def strcmp(str1: str, str2: str) -> t.CInt: pass
def samestr(str1: str, str2: str) -> bool: pass
def strncmp(str1: str, str2: str, n: t.CSizeT) -> t.CInt: pass
def memcmp(ptr1: t.CVoid | t.CPtr, ptr2: t.CVoid | t.CPtr, n: t.CSizeT) -> t.CInt: pass
def strchr(s: str, cr: t.CInt) -> str: pass
def strrchr(s: str, cr: t.CInt) -> str: pass
def strstr(s: str, needle: str) -> str: pass
def strspn(s: str, skip: str) -> int: pass
def memset(ptr: t.CVoid | t.CPtr, value: t.CInt, num: t.CSizeT) -> t.CVoid | t.CPtr | t.CExport: pass
def memset32(ptr: t.CVoid | t.CPtr, value: t.CUInt32T, count: t.CSizeT) -> t.CVoid | t.CPtr: pass
def memcpy(dest: t.CVoid | t.CPtr, src: t.CVoid | t.CPtr, num: t.CSizeT) -> t.CVoid | t.CPtr | t.CExport: pass
def memmove(dest: t.CVoid | t.CPtr, src: t.CVoid | t.CPtr, num: t.CSizeT) -> t.CVoid | t.CPtr: pass
def atoi(src: str) -> t.CInt: pass
def atoll(src: str) -> t.CInt64T: pass
def atof(src: str) -> t.CDouble: pass
def split(s: str, delim: str, result: t.CArray[str]) -> int: pass

View File

@@ -1 +0,0 @@
{"_load_includes_sha1_set": "读取 _sha1_map.txt将 includes/ 开头的 SHA1 写入 sha1_set\n sha1_set 大小为 MAX_INCLUDES_SHA1 * 17每个 SHA1 16字符+null\n 返回找到的 includes SHA1 数量,-1 表示错误", "_is_in_sha1_set": "检查 sha1 是否在集合中", "WriteIncludesSha1Map": "将 includes 扫描结果写入 _sha1_map.txt供 StubMerger 使用)\n\n 若 filter_set 不为 None 且 filter_count > 0只写入 filter_set 中的条目。\n ", "_IsFuncDeclaredOrDefined": "检查 out_buf 中是否已有函数的 declare 或 define 行", "_CommentOutDeclareInBuf": "在 out_buf 中搜索 declare 行(包含 func_sig将其注释掉", "_CommentOutGlobalInBuf": "在 out_buf 中搜索全局变量定义行(以 global_name 开头),将行首改为 ';'", "_CommentOutOpaqueTypeInBuf": "在 out_buf 中搜索 type_name_prefix 对应的 opaque 声明行,将行首改为 ';'\n\n type_name_prefix 格式: '%\"sha1.ClassName\"'(不含 '=' 和后续内容)\n 返回 1=已注释, 0=未找到\n ", "_HasFullTypeDefinition": "检查 out_buf 中是否已有 type_name_prefix 的完整定义", "_LoadAndAppendStub": "加载依赖 stub 并追加(跳过 header去重", "_LoadAndAppendTextDeclares": "从依赖 text.ll 提取 declaredefine 转 declare追加到 out_buf", "_PathToModuleName": "将文件路径转换为模块名\n\n 特殊处理 __init__.pyincludes/ast/__init__.py → ast而非 ast.__init__\n ", "_BuildIncludesSha1Map": "从 _sha1_map.txt 构建 sha1→module_name 映射,返回条目数", "_FindSha1ByModName": "从模块名查找 SHA1精确匹配", "_AddSha1ToSet": "将 SHA1 加入集合,返回新 count", "_BuildReachableSha1Set": "构建可达 SHA1 集合(依赖图按需翻译)", "BuildCombinedIR": "组合本地 stub + 依赖 stubs + 本地 text → out_buf按需加载"}

View File

@@ -1,60 +0,0 @@
"""
Auto-generated Python stub file from lib.core.StubMerger.py
Module: lib.core.StubMerger
"""
import t, c
from stdint import *
import memhub
import string
import stdio
import stdlib
import llvmlite
import w32.win32file as win32file
import w32.win32base as win32base
import w32.fileio as fileio
import viperlib
import sys
import ast
import lib.core.IncludesScanner as IncludesScanner
import lib.core.Handles.HandlesStruct as HandlesStruct
import lib.core.Handles.HandlesImports as HandlesImports
import lib.core.Handles.HandlesTranslator as HandlesTranslator
_mbuddy: t.CExtern | memhub.MemManager | t.CPtr
MAX_INCLUDES_SHA1: t.CDefine = 256
STUB_READ_BUF_SIZE: t.CDefine = 262144
MAX_INCLUDES: t.CDefine = 256
def _load_includes_sha1_set(pool: memhub.MemBuddy | t.CPtr, temp_dir: str, sha1_set: str) -> int: pass
def _is_in_sha1_set(sha1: str, sha1_set: str, set_count: int) -> int: pass
def WriteIncludesSha1Map(mb: memhub.MemBuddy | t.CPtr, temp_dir: str, scan_result: IncludesScanner.ScanResult | t.CPtr, filter_set: t.CChar | t.CPtr, filter_count: int) -> int: pass
def _IsFuncDeclaredOrDefined(out_buf: bytes, func_sig: str) -> int: pass
def _CommentOutDeclareInBuf(out_buf: bytes, func_sig: str) -> int: pass
def _CommentOutGlobalInBuf(out_buf: bytes, global_name: str) -> int: pass
def _CommentOutOpaqueTypeInBuf(out_buf: bytes, type_name_prefix: str) -> int: pass
def _HasFullTypeDefinition(out_buf: bytes, type_name_prefix: str) -> int: pass
def _LoadAndAppendStub(temp_dir: str, td_len: t.CSizeT, dep_sha1: str, dep_buf: bytes, out_buf: bytes, out_size: t.CSizeT, out_pos: t.CSizeT) -> t.CSizeT: pass
def _LoadAndAppendTextDeclares(temp_dir: str, td_len: t.CSizeT, dep_sha1: str, dep_buf: bytes, out_buf: bytes, out_size: t.CSizeT, out_pos: t.CSizeT) -> t.CSizeT: pass
def _PathToModuleName(path: str) -> str: pass
def _BuildIncludesSha1Map(temp_dir: str, td_len: t.CSizeT, sha1_list: t.CChar | t.CPtr, mod_list: t.CChar | t.CPtr) -> int: pass
def _FindSha1ByModName(sha1_arr: t.CChar | t.CPtr, mod_arr: t.CChar | t.CPtr, count: int, mod_name: str) -> str: pass
def _AddSha1ToSet(set_buf: t.CChar | t.CPtr, count: int, sha1: str) -> int: pass
def _BuildReachableSha1Set(mb: memhub.MemBuddy | t.CPtr, source_dir: str, temp_dir: str, reachable_set: t.CChar | t.CPtr) -> int: pass
def BuildCombinedIR(temp_dir: str, local_sha1: str, out_buf: bytes, out_size: t.CSizeT) -> t.CSizeT: pass

View File

@@ -1 +0,0 @@
{"FileEntry": "扫描到的文件条目", "ScanResult": "扫描结果集合", "create_scan_result": "创建扫描结果容器,预分配 MAX_FILES 个槽位", "add_file_entry": "添加文件条目到扫描结果,返回 0 成功", "compute_file_sha1": "读取文件内容并计算 SHA1 前16字符CRLF→LF 后计算,与 Projectrans.py 一致)", "scan_directory_recursive": "递归扫描目录,收集 .py 文件", "scan_includes": "扫描 includes 目录,返回所有 .py 文件的扫描结果", "find_entry_by_module": "按模块名查找文件条目"}

View File

@@ -1,45 +0,0 @@
"""
Auto-generated Python stub file from lib.core.IncludesScanner.py
Module: lib.core.IncludesScanner
"""
import t, c
from stdint import *
import memhub
import string
import stdio
import stdlib
import w32.win32file as win32file
import w32.win32base as win32base
import w32.fileio as fileio
import hashlib
import viperlib
_mbuddy: t.CExtern | memhub.MemManager | t.CPtr
MAX_PATH_LEN: t.CDefine = 512
MAX_FILES: t.CDefine = 256
@t.NoVTable
class FileEntry:
Path: str
Sha1: str
RelPath: str
ModuleName: str
@t.NoVTable
class ScanResult:
Entries: FileEntry | t.CPtr
Count: t.CInt
Capacity: t.CInt
def create_scan_result(pool: memhub.MemBuddy | t.CPtr) -> ScanResult | t.CPtr: pass
def add_file_entry(result: ScanResult | t.CPtr, pool: memhub.MemBuddy | t.CPtr, abs_path: str, rel_path: str, sha1: str) -> int: pass
def compute_file_sha1(pool: memhub.MemBuddy | t.CPtr, file_path: str) -> str: pass
def scan_directory_recursive(pool: memhub.MemBuddy | t.CPtr, root_dir: str, rel_prefix: str, result: ScanResult | t.CPtr) -> int: pass
def scan_includes(pool: memhub.MemBuddy | t.CPtr, includes_dir: str) -> ScanResult | t.CPtr: pass
def find_entry_by_module(result: ScanResult | t.CPtr, module_name: str) -> FileEntry | t.CPtr: pass

View File

@@ -1,62 +0,0 @@
"""
Auto-generated Python stub file from llvmlite.__verify.py
Module: llvmlite.__verify
"""
import t, c
from stdint import *
import string
import viperlib
import memhub
from linkedlist import GSListNode, GSList
from .__function import Function, BasicBlock, Line, Param
from .__module import LLVMModule
VERIFY_OK: t.CDefine = 0
VERIFY_ERR_NO_TERMINATOR: t.CDefine = 1
VERIFY_ERR_DUPLICATE_DEF: t.CDefine = 2
VERIFY_ERR_UNDEFINED_USE: t.CDefine = 3
VERIFY_ERR_PHI_NOT_FIRST: t.CDefine = 4
class NameEntry(GSListNode[NameEntry]):
Name: t.CChar | t.CPtr
class VerifyResult:
ErrorCount: t.CInt
WarningCount: t.CInt
ErrorCode: t.CInt
ErrorBuf: t.CChar | t.CPtr
ErrorBufSize: t.CSizeT
def _new_verify_result(pool: memhub.MemBuddy | t.CPtr, buf_size: t.CSizeT) -> VerifyResult | t.CPtr: pass
def _report_error(result: VerifyResult | t.CPtr, code: t.CInt, msg: t.CChar | t.CPtr) -> t.CInt: pass
def _append_cstr(dst: t.CChar | t.CPtr, dst_size: t.CSizeT, src: t.CChar | t.CPtr) -> t.CInt: pass
def _new_name_table(pool: memhub.MemBuddy | t.CPtr) -> GSList[NameEntry] | t.CPtr: pass
NENTRY_SIZE: t.CDefine = 16
def _name_table_add(table: GSList[NameEntry] | t.CPtr, pool: memhub.MemBuddy | t.CPtr, name: t.CChar | t.CPtr) -> t.CInt: pass
def _name_table_contains(table: GSList[NameEntry] | t.CPtr, name: t.CChar | t.CPtr) -> t.CInt: pass
def _is_char_name(ch: t.CChar) -> t.CInt: pass
def _extract_def_name(pool: memhub.MemBuddy | t.CPtr, text: t.CChar | t.CPtr) -> t.CChar | t.CPtr: pass
def _is_terminator(text: t.CChar | t.CPtr) -> t.CInt: pass
def _is_phi(text: t.CChar | t.CPtr) -> t.CInt: pass
def _check_uses_in_line(table: GSList[NameEntry] | t.CPtr, text: t.CChar | t.CPtr, def_name: t.CChar | t.CPtr) -> t.CInt: pass
def _name_matches_at(text: t.CChar | t.CPtr, start: t.CInt, length: t.CInt, table: GSList[NameEntry] | t.CPtr) -> t.CInt: pass
def _str_matches_at(text: t.CChar | t.CPtr, start: t.CInt, length: t.CInt, target: t.CChar | t.CPtr) -> t.CInt: pass
def verify_function(pool: memhub.MemBuddy | t.CPtr, func: Function | t.CPtr, result: VerifyResult | t.CPtr) -> t.CInt: pass
def verify_module(pool: memhub.MemBuddy | t.CPtr, mod: LLVMModule | t.CPtr, result: VerifyResult | t.CPtr) -> t.CInt: pass

View File

@@ -1 +0,0 @@
{"RunPhase1": "Phase1: 扫描 includes 目录,按需翻译并生成 stub"}

View File

@@ -1,32 +0,0 @@
"""
Auto-generated Python stub file from lib.core.Phase1.py
Module: lib.core.Phase1
"""
import t, c
from stdint import *
import stdio
import string
import stdlib
import memhub
import viperlib
import w32.fileio as fileio
import w32.win32file
import w32.win32base
import ast
import llvmlite
import lib.core.VLogger as VLogger
import lib.core.Handles.HandlesTranslator as HandlesTranslator
import lib.core.Handles.HandlesStruct as HandlesStruct
import lib.core.Handles.HandlesType as HandlesType
import lib.core.Handles.HandlesExprCall as HandlesExprCall
import lib.core.Handles.HandlesImports as HandlesImports
import lib.core.IncludesScanner as IncludesScanner
import lib.core.StubMerger as StubMerger
import lib.Projectrans.Config as Config
_mbuddy: t.CExtern | memhub.MemManager | t.CPtr
SRC_BUF_SIZE: t.CDefine = 1048576
def RunPhase1(mb: memhub.MemBuddy | t.CPtr, includes_dir: str, temp_dir: str, log: VLogger.Logger | t.CPtr) -> int: pass

View File

@@ -1,93 +0,0 @@
"""
Auto-generated Python stub file from llvmlite.__function.py
Module: llvmlite.__function
"""
import t, c
from stdint import *
import string
import viperlib
import memhub
import stdio
from linkedlist import GSListNode, GSList
from .__types import LLVMType, ParamNode, TypePrint
class Line(GSListNode[Line]):
Buf: t.CChar | t.CPtr
Len: t.CSizeT
class BasicBlock(GSListNode[BasicBlock]):
Name: t.CChar | t.CPtr
Lines: GSList[Line] | t.CPtr
IsTerminated: t.CInt
class Param(GSListNode[Param]):
Ty: LLVMType | t.CPtr
Name: t.CChar | t.CPtr
Attrs: t.CChar | t.CPtr
class Function(GSListNode[Function]):
Name: t.CChar | t.CPtr
RetTy: LLVMType | t.CPtr
Params: GSList[Param] | t.CPtr
Blocks: GSList[BasicBlock] | t.CPtr
IsDeclared: t.CInt
IsVarArg: t.CInt
Attrs: t.CChar | t.CPtr
LINE_SIZE: t.CDefine = 24
def new_line(pool: memhub.MemBuddy | t.CPtr, text: t.CChar | t.CPtr) -> Line | t.CPtr: pass
def _new_gslist(pool: memhub.MemBuddy | t.CPtr, list_size: t.CSizeT) -> t.CPtr: pass
BLOCK_SIZE: t.CDefine = 32
def new_basic_block(pool: memhub.MemBuddy | t.CPtr, name: t.CChar | t.CPtr) -> BasicBlock | t.CPtr: pass
PARAM_SIZE: t.CDefine = 32
def new_param(pool: memhub.MemBuddy | t.CPtr, ty: LLVMType | t.CPtr, name: t.CChar | t.CPtr) -> Param | t.CPtr: pass
FUNC_SIZE: t.CDefine = 56
def new_function(pool: memhub.MemBuddy | t.CPtr, name: t.CChar | t.CPtr, ret_ty: LLVMType | t.CPtr) -> Function | t.CPtr: pass
def function_add_param(func: Function | t.CPtr, param: Param | t.CPtr) -> t.CInt: pass
def function_add_block(func: Function | t.CPtr, block: BasicBlock | t.CPtr) -> t.CInt: pass
def function_move_block_to_end(func: Function | t.CPtr, block: BasicBlock | t.CPtr) -> t.CInt: pass
def block_append_line(block: BasicBlock | t.CPtr, line: Line | t.CPtr) -> t.CInt: pass
def block_append_text(pool: memhub.MemBuddy | t.CPtr, block: BasicBlock | t.CPtr, text: t.CChar | t.CPtr) -> t.CInt: pass
def function_set_attrs(func: Function | t.CPtr, attrs: t.CChar | t.CPtr) -> t.CInt: pass
def param_set_attrs(param: Param | t.CPtr, attrs: t.CChar | t.CPtr) -> t.CInt: pass
def _ll_name_needs_quote(name: str) -> t.CInt: pass
def FunctionPrint(buf: t.CChar | t.CPtr, size: t.CSizeT, func: Function | t.CPtr, pool: memhub.MemBuddy | t.CPtr) -> t.CInt: pass
def _append_cstr(dst: t.CChar | t.CPtr, dst_size: t.CSizeT, src: t.CChar | t.CPtr) -> t.CInt: pass
def function_get_name(func: Function | t.CPtr) -> t.CChar | t.CPtr: pass
def function_get_ret_ty(func: Function | t.CPtr) -> LLVMType | t.CPtr: pass
def function_get_params(func: Function | t.CPtr) -> GSList[Param] | t.CPtr: pass
def function_get_param_head(func: Function | t.CPtr) -> Param | t.CPtr: pass
def function_get_next(func: Function | t.CPtr) -> Function | t.CPtr: pass
def function_is_declared(func: Function | t.CPtr) -> t.CInt: pass
def param_get_name(param: Param | t.CPtr) -> t.CChar | t.CPtr: pass
def param_get_ty(param: Param | t.CPtr) -> LLVMType | t.CPtr: pass
def param_get_next(param: Param | t.CPtr) -> Param | t.CPtr: pass

View File

@@ -1,81 +0,0 @@
"""
Auto-generated Python stub file from memhub.py
Module: memhub
"""
import t, c
from stdint import *
import string
import atom
import viperio
MEMHUB_ALIGN: t.CDefine = 8
MEMSLAB_MIN_BLOCK: t.CDefine = 16
MEMSLAB_BITMAP_BYTES: t.CDefine = 256
MEMBUDDY_MIN_BLOCK: t.CDefine = 32
MEMBUDDY_MAX_ORDERS: t.CDefine = 32
MEMBUDDY_HEADER_SIZE: t.CDefine = 8
def _align_up(val: t.CSizeT, align: t.CSizeT) -> t.CSizeT: pass
def _largest_pow2_le(val: t.CSizeT) -> t.CSizeT: pass
def _block_size_at_order(order: t.CInt) -> t.CSizeT: pass
@t.CVTable
class MemManager:
__provides__: list[str] = ['__memmgr__']
base: t.CVoid | t.CPtr
size: t.CSizeT
def __init__(self: MemManager, base: t.CVoid | t.CPtr, size: t.CSizeT) -> t.CInt: pass
def alloc(self: MemManager, size: t.CSizeT) -> t.CVoid | t.CPtr: pass
def free(self: MemManager, ptr: t.CVoid | t.CPtr) -> t.CInt: pass
def reset(self: MemManager) -> t.CInt: pass
def calloc(self: MemManager, count: t.CSizeT, size: t.CSizeT) -> t.CVoid | t.CPtr: pass
def realloc(self: MemManager, ptr: t.CVoid | t.CPtr, old_size: t.CSizeT, new_size: t.CSizeT) -> t.CVoid | t.CPtr: pass
def __enter__(self: MemManager) -> 'MemManager' | t.CPtr: pass
def __exit__(self: MemManager) -> t.CInt: pass
def alloc_buf(self: MemManager, capacity: t.CSizeT) -> viperio.Buf | t.CPtr: pass
class MemPool(MemManager):
offset: t.CSizeT
high_water: t.CSizeT
def __init__(self: MemPool, base: t.CVoid | t.CPtr, size: t.CSizeT) -> t.CInt: pass
def alloc(self: MemPool, size: t.CSizeT) -> t.CVoid | t.CPtr: pass
def free(self: MemPool, ptr: t.CVoid | t.CPtr) -> t.CInt: pass
def reset(self: MemPool) -> t.CInt: pass
class MemSlab(MemManager):
block_size: t.CSizeT
block_count: t.CSizeT
used_count: t.CSizeT
free_list: t.CVoid | t.CPtr
alloc_map: t.CUInt8T | t.CPtr
alloc_map_size: t.CSizeT
usable: t.CVoid | t.CPtr
usable_size: t.CSizeT
def __init__(self: MemSlab, base: t.CVoid | t.CPtr, size: t.CSizeT, block_size: t.CSizeT) -> t.CInt: pass
def alloc(self: MemSlab, size: t.CSizeT) -> t.CVoid | t.CPtr: pass
def free(self: MemSlab, ptr: t.CVoid | t.CPtr) -> t.CInt: pass
def reset(self: MemSlab) -> t.CInt: pass
class MemBuddy(MemManager):
max_order: t.CInt
free_lists: t.CUInt64T | t.CPtr
lock_val: t.CVolatile | t.CInt
usable: t.CVoid | t.CPtr
usable_size: t.CSizeT
def __init__(self: MemBuddy, base: t.CVoid | t.CPtr, size: t.CSizeT) -> t.CInt: pass
def _fl_push(self: MemBuddy, order: t.CInt, block: t.CVoid | t.CPtr) -> t.CInt: pass
def _fl_pop(self: MemBuddy, order: t.CInt) -> t.CVoid | t.CPtr: pass
def _fl_find_and_remove(self: MemBuddy, order: t.CInt, target: t.CVoid | t.CPtr) -> t.CInt: pass
def _buddy_of(self: MemBuddy, block: t.CVoid | t.CPtr, order: t.CInt) -> t.CVoid | t.CPtr: pass
def _order_for_size(self: MemBuddy, size: t.CSizeT) -> t.CInt: pass
def _split_to_order(self: MemBuddy, to_order: t.CInt) -> t.CVoid | t.CPtr: pass
def _coalesce(self: MemBuddy, block: t.CVoid | t.CPtr, order: t.CInt) -> t.CInt: pass
def _is_valid_ptr(self: MemBuddy, ptr: t.CVoid | t.CPtr) -> t.CInt: pass
def _lock(self: MemBuddy) -> t.CInt: pass
def _unlock(self: MemBuddy) -> t.CInt: pass
def alloc(self: MemBuddy, size: t.CSizeT) -> t.CVoid | t.CPtr: pass
def free(self: MemBuddy, ptr: t.CVoid | t.CPtr) -> t.CInt: pass
def reset(self: MemBuddy) -> t.CInt: pass
def realloc(self: MemBuddy, ptr: t.CVoid | t.CPtr, old_size: t.CSizeT, new_size: t.CSizeT) -> t.CVoid | t.CPtr: pass

View File

@@ -1,30 +0,0 @@
"""
Auto-generated Python stub file from _list.py
Module: _list
"""
import t, c
import memhub
import string
from stdint import *
class list[T]:
__data__: t.CVoid | t.CPtr
__count__: t.CSizeT
__capacity__: t.CSizeT
__pool__: memhub.MemManager | t.CPtr
__elem_size__: t.CSizeT
__iter_index__: t.CSizeT
def __new__(self: list, pool: memhub.MemManager | t.CPtr, elem_size: t.CSizeT) -> t.CInt: pass
def __init__(self: list, pool: memhub.MemManager | t.CPtr, elem_size: t.CSizeT) -> t.CInt: pass
def __len__(self: list) -> t.CSizeT: pass
def append(self: list, item: T) -> t.CInt: pass
def get(self: list, index: t.CSizeT) -> T: pass
def __getitem__(self: list, index: t.CSizeT) -> T: pass
def set(self: list, index: t.CSizeT, value: T) -> t.CInt: pass
def __setitem__(self: list, index: t.CSizeT, value: T) -> t.CInt: pass
def pop(self: list) -> T: pass
def clear(self: list) -> t.CInt: pass
def __iter__(self: list) -> list[T] | t.CPtr: pass
def __next__(self: list) -> T: pass